summaryrefslogtreecommitdiff
path: root/src/gui_gtk.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui_gtk.cc')
-rw-r--r--src/gui_gtk.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gui_gtk.cc b/src/gui_gtk.cc
index 4c1cc13..be9fa96 100644
--- a/src/gui_gtk.cc
+++ b/src/gui_gtk.cc
@@ -1470,7 +1470,11 @@ public:
}
auto& handle = it->second;
if (handle->in_callback_) {
- handle->delayed_remove_ = true;
+ if (handle->delayed_remove_) {
+ g_source_remove(handle->watch_);
+ } else {
+ handle->delayed_remove_ = true;
+ }
} else {
g_source_remove(handle->watch_);
}