--- glib/gio/gpollfilemonitor.c.orig	2017-11-02 15:20:41.557562278 +0100
+++ glib/gio/gpollfilemonitor.c	2017-11-02 15:25:37.378941943 +0100
@@ -145,7 +145,8 @@
 {
   GPollFileMonitor* poll_monitor = data;
 
-  poll_monitor->timeout = FALSE;
+  g_source_unref (poll_monitor->timeout);
+  poll_monitor->timeout = NULL;
 
   g_file_query_info_async (poll_monitor->file, G_FILE_ATTRIBUTE_ETAG_VALUE "," G_FILE_ATTRIBUTE_STANDARD_SIZE,
 			 0, 0, NULL, got_new_info, g_object_ref (poll_monitor));
@@ -209,7 +210,6 @@
   
   if (poll_monitor->timeout)
     {
-      g_source_destroy (poll_monitor->timeout);
       g_source_unref (poll_monitor->timeout);
       poll_monitor->timeout = NULL;
     }
