[geary/wip/search-fixes: 6/10] Fix occasional infinite filling in ConversationMonitor
- From: Michael Gratton <mjog src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [geary/wip/search-fixes: 6/10] Fix occasional infinite filling in ConversationMonitor
- Date: Tue, 6 Aug 2019 11:25:03 +0000 (UTC)
commit 0ebf7ad2dc9e8fb61b671c5c86675e2f891d157b
Author: Michael Gratton <mike vee net>
Date: Mon Aug 5 18:32:05 2019 +1000
Fix occasional infinite filling in ConversationMonitor
Add successive fill operations via idle callbacks so that the monitor
doesn't get stuck immediately queuing and executing another fill op
when the first one doesn't return any mesages.
src/engine/app/app-conversation-monitor.vala | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
---
diff --git a/src/engine/app/app-conversation-monitor.vala b/src/engine/app/app-conversation-monitor.vala
index 14d5ff55..c7ceed4d 100644
--- a/src/engine/app/app-conversation-monitor.vala
+++ b/src/engine/app/app-conversation-monitor.vala
@@ -365,7 +365,12 @@ public class Geary.App.ConversationMonitor : BaseObject {
if (this.is_monitoring &&
this.can_load_more &&
this.conversations.size < this.min_window_count) {
- this.queue.add(new FillWindowOperation(this));
+ GLib.Idle.add(
+ () => {
+ this.queue.add(new FillWindowOperation(this));
+ return GLib.Source.REMOVE;
+ }
+ );
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]