diff --git a/wdmtg.c b/wdmtg.c index 289b48d..b2a9d0b 100644 --- a/wdmtg.c +++ b/wdmtg.c @@ -540,11 +540,16 @@ generator_init(void) g_free(subpath); g_key_file_free(kf); + // Write a start marker so that we can reliably detect interruptions + struct event *event = g_slice_new0(struct event); + event->timestamp = -1; + g_async_queue_push(g.queue, event); + + update_current_window(); + gint64 timeout_ms = timeout * 1000; gen.idle_timeout.hi = timeout_ms >> 32; gen.idle_timeout.lo = timeout_ms; - - update_current_window(); set_idle_alarm(&gen.idle_alarm_inactive, XCB_SYNC_TESTTYPE_POSITIVE_COMPARISON, gen.idle_timeout);