move git-buildpackage config from debian/ to .git/
[debian/amanda] / common-src / event.c
index 474e87138107daae2079bedb0c2c646b446a3c7a..97e7c29552c7e0c7a27bf15aee958020d82b0638 100644 (file)
@@ -180,6 +180,8 @@ event_register(
 
            /* But it doesn't give us the source directly.. */
            handle->source = g_main_context_find_source_by_id(NULL, handle->source_id);
+           /* EV_TIME must always be handled after EV_READ */
+           g_source_set_priority(handle->source, 10);
            break;
 
        case EV_WAIT:
@@ -479,8 +481,12 @@ new_fdsource(gint fd, GIOCondition events)
  * exponentially increasing interals.  Writing a smarter implementation runs into
  * some tricky race conditions and extra machinery.  Since there are few, if any,
  * users of a glib version this old, such machinery wouldn't get much testing.
+ *
+ * FreeBSD users have also reported problems with the glib child watch source,
+ * so we use the dumb version on FreeBSD, too.
  */
-#if (GLIB_MAJOR_VERSION < 2 || (GLIB_MAJOR_VERSION == 2 && GLIB_MINOR_VERSION < 6))
+
+#if (defined(__FreeBSD__) || GLIB_MAJOR_VERSION < 2 || (GLIB_MAJOR_VERSION == 2 && GLIB_MINOR_VERSION < 6))
 typedef struct ChildWatchSource {
     GSource source; /* must be the first element in the struct */