r40465 - in /desktop/experimental/glib2.0/debian: ./ patches/

smcv at users.alioth.debian.org smcv at users.alioth.debian.org
Tue Feb 11 16:48:19 UTC 2014


Author: smcv
Date: Tue Feb 11 16:48:19 2014
New Revision: 40465

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=40465
Log:
Add many patches for FTBFS test failures

* d/p/gdbus-Let-the-pending-read-finish-before-closing-the.patch:
  add patch from Mikhail Zabaluev fixing a test failure on mips,
  also reproduced on mipsel (Closes: #738290)
* d/p/Fix-races-in-unix-signal-dispatch.patch: add patch from upstream
  to fix what appears to be the root cause of #737380
* d/p/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch,
  d/p/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch:
  improve arbitrary timeouts in regression tests, fixing an unreported
  FTBFS on armhf

Added:
    desktop/experimental/glib2.0/debian/patches/Fix-races-in-unix-signal-dispatch.patch
    desktop/experimental/glib2.0/debian/patches/gdbus-Let-the-pending-read-finish-before-closing-the.patch
    desktop/experimental/glib2.0/debian/patches/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch
    desktop/experimental/glib2.0/debian/patches/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch
Modified:
    desktop/experimental/glib2.0/debian/changelog
    desktop/experimental/glib2.0/debian/patches/series

Modified: desktop/experimental/glib2.0/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/changelog?rev=40465&op=diff
==============================================================================
--- desktop/experimental/glib2.0/debian/changelog	[utf-8] (original)
+++ desktop/experimental/glib2.0/debian/changelog	[utf-8] Tue Feb 11 16:48:19 2014
@@ -1,6 +1,16 @@
 glib2.0 (2.38.2-4) UNRELEASED; urgency=medium
 
+  * Team upload
   * DEP-3: tag patch for Debian#737501 as sent upstream to GNOME#723653
+  * d/p/gdbus-Let-the-pending-read-finish-before-closing-the.patch:
+    add patch from Mikhail Zabaluev fixing a test failure on mips,
+    also reproduced on mipsel (Closes: #738290)
+  * d/p/Fix-races-in-unix-signal-dispatch.patch: add patch from upstream
+    to fix what appears to be the root cause of #737380
+  * d/p/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch,
+    d/p/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch:
+    improve arbitrary timeouts in regression tests, fixing an unreported
+    FTBFS on armhf
 
  -- Simon McVittie <smcv at debian.org>  Thu, 06 Feb 2014 10:36:16 +0000
 

Added: desktop/experimental/glib2.0/debian/patches/Fix-races-in-unix-signal-dispatch.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/patches/Fix-races-in-unix-signal-dispatch.patch?rev=40465&op=file
==============================================================================
--- desktop/experimental/glib2.0/debian/patches/Fix-races-in-unix-signal-dispatch.patch	(added)
+++ desktop/experimental/glib2.0/debian/patches/Fix-races-in-unix-signal-dispatch.patch	[utf-8] Tue Feb 11 16:48:19 2014
@@ -0,0 +1,95 @@
+From: Ryan Lortie <desrt at desrt.ca>
+Date: Tue, 29 Oct 2013 11:11:28 -0700
+Subject: [PATCH] Fix races in unix signal dispatch
+
+Fix some races introduced in be2c7b83c4a9c9d3aa76b1499c27ab19e0f4e470
+while keeping the property that multiple handlers for the same unix
+signal all get dispatched.
+
+Also fix the behaviour of the source checking for pending signals when
+it's created.  No matter what we do here (clear the pending flag or not)
+there is something that can go wrong.
+
+If we clear the flag, we may prevent other sources from being
+dispatched.  If we don't clear it, we may end up dispatching the same
+source twice (if we manage to dispatch it from its own thread before the
+GLib worker has a chance to run).
+
+Instead, run the full dispatch procedure when a new source is added.  It
+actually doesn't matter what thread this runs in since the lock is held.
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=711090
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=737380
+Origin: upstream, 2.39.3, commit:76584e7ae3c3676e6445637f1ad026e5af857938
+---
+ glib/gmain.c | 27 ++++++++++++++++++++-------
+ 1 file changed, 20 insertions(+), 7 deletions(-)
+
+diff --git a/glib/gmain.c b/glib/gmain.c
+index b5ee6df..9e3c993 100644
+--- a/glib/gmain.c
++++ b/glib/gmain.c
+@@ -4818,17 +4818,26 @@ wake_source (GSource *source)
+ }
+ 
+ static void
+-dispatch_unix_signals (void)
++dispatch_unix_signals_unlocked (void)
+ {
++  gboolean pending[NSIG];
+   GSList *node;
++  gint i;
+ 
+   /* clear this first incase another one arrives while we're processing */
+   any_unix_signal_pending = FALSE;
+ 
+-  G_LOCK(unix_signal_lock);
++  /* We atomically test/clear the bit from the global array in case
++   * other signals arrive while we are dispatching.
++   *
++   * We then can safely use our own array below without worrying about
++   * races.
++   */
++  for (i = 0; i < NSIG; i++)
++    pending[i] = g_atomic_int_compare_and_exchange (&unix_signal_pending[i], TRUE, FALSE);
+ 
+   /* handle GChildWatchSource instances */
+-  if (unix_signal_pending[SIGCHLD])
++  if (pending[SIGCHLD])
+     {
+       /* The only way we can do this is to scan all of the children.
+        *
+@@ -4875,7 +4884,7 @@ dispatch_unix_signals (void)
+ 
+       if (!source->pending)
+         {
+-          if (unix_signal_pending[source->signum])
++          if (pending[source->signum])
+             {
+               source->pending = TRUE;
+ 
+@@ -4884,8 +4893,13 @@ dispatch_unix_signals (void)
+         }
+     }
+ 
+-  memset ((void*)unix_signal_pending, 0, sizeof (unix_signal_pending));
++}
+ 
++static void
++dispatch_unix_signals (void)
++{
++  G_LOCK(unix_signal_lock);
++  dispatch_unix_signals_unlocked ();
+   G_UNLOCK(unix_signal_lock);
+ }
+ 
+@@ -4999,8 +5013,7 @@ _g_main_create_unix_signal_watch (int signum)
+   G_LOCK (unix_signal_lock);
+   ref_unix_signal_handler_unlocked (signum);
+   unix_signal_watches = g_slist_prepend (unix_signal_watches, unix_signal_source);
+-  if (unix_signal_pending[signum])
+-    unix_signal_source->pending = TRUE;
++  dispatch_unix_signals_unlocked ();
+   G_UNLOCK (unix_signal_lock);
+ 
+   return source;

Added: desktop/experimental/glib2.0/debian/patches/gdbus-Let-the-pending-read-finish-before-closing-the.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/patches/gdbus-Let-the-pending-read-finish-before-closing-the.patch?rev=40465&op=file
==============================================================================
--- desktop/experimental/glib2.0/debian/patches/gdbus-Let-the-pending-read-finish-before-closing-the.patch	(added)
+++ desktop/experimental/glib2.0/debian/patches/gdbus-Let-the-pending-read-finish-before-closing-the.patch	[utf-8] Tue Feb 11 16:48:19 2014
@@ -0,0 +1,193 @@
+From: Mikhail Zabaluev <mikhail.zabaluev at gmail.com>
+Date: Mon, 3 Feb 2014 02:16:53 +0200
+Subject: [PATCH] gdbus: Let the pending read finish before closing the
+ connection
+
+This prevents the GIOStream from being closed with a read pending
+on the input substream. g_io_stream_close_async() is actually
+supposed to fail in this case; see
+https://bugzilla.gnome.org/show_bug.cgi?id=707912
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=723719
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=738290
+Reviewed-by: Simon McVittie <simon.mcvittie at collabora.co.uk>
+Applied-upstream: no
+---
+ gio/gdbusprivate.c | 75 +++++++++++++++++++++++++++---------------------------
+ 1 file changed, 38 insertions(+), 37 deletions(-)
+
+diff --git a/gio/gdbusprivate.c b/gio/gdbusprivate.c
+index 0e5bef2..32f8a00 100644
+--- a/gio/gdbusprivate.c
++++ b/gio/gdbusprivate.c
+@@ -340,6 +340,8 @@ typedef enum {
+     PENDING_CLOSE
+ } OutputPending;
+ 
++static void continue_writing (GDBusWorker *worker);
++
+ struct GDBusWorker
+ {
+   volatile gint                       ref_count;
+@@ -581,7 +583,10 @@ _g_dbus_worker_do_read_cb (GInputStream  *input_stream,
+ 
+   /* If already stopped, don't even process the reply */
+   if (g_atomic_int_get (&worker->stopped))
+-    goto out;
++    {
++      worker->close_expected = TRUE;
++      goto out;
++    }
+ 
+   error = NULL;
+   if (worker->socket == NULL)
+@@ -676,21 +681,16 @@ _g_dbus_worker_do_read_cb (GInputStream  *input_stream,
+        * if the GDBusConnection tells us to close (either via
+        * _g_dbus_worker_stop, which is called on last-unref, or directly),
+        * so a cancelled read must mean our connection was closed locally.
+-       *
+-       * If we're closing, other errors are possible - notably,
+-       * G_IO_ERROR_CLOSED can be seen if we close the stream with an async
+-       * read in-flight. It seems sensible to treat all read errors during
+-       * closing as an expected thing that doesn't trip exit-on-close.
+-       *
+-       * Because close_expected can't be set until we get into the worker
+-       * thread, but the cancellable is signalled sooner (from another
+-       * thread), we do still need to check the error.
+        */
+-      if (worker->close_expected ||
+-          g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
+-        _g_dbus_worker_emit_disconnected (worker, FALSE, NULL);
++      if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED))
++        {
++          _g_dbus_worker_emit_disconnected (worker, FALSE, NULL);
++          worker->close_expected = TRUE;
++        }
+       else
+-        _g_dbus_worker_emit_disconnected (worker, TRUE, error);
++        {
++          _g_dbus_worker_emit_disconnected (worker, TRUE, error);
++        }
+ 
+       g_error_free (error);
+       goto out;
+@@ -819,6 +819,13 @@ _g_dbus_worker_do_read_cb (GInputStream  *input_stream,
+  out:
+   g_mutex_unlock (&worker->read_lock);
+ 
++  /* If need to close the stream, make sure the output logic runs its course.
++   * Because this is the worker thread, we can read these struct members
++   * without holding the lock: no other thread ever modifies them.
++   */
++  if (worker->close_expected && worker->output_pending == PENDING_NONE)
++    continue_writing (worker);
++
+   /* gives up the reference acquired when calling g_input_stream_read_async() */
+   _g_dbus_worker_unref (worker);
+ }
+@@ -827,8 +834,8 @@ _g_dbus_worker_do_read_cb (GInputStream  *input_stream,
+ static void
+ _g_dbus_worker_do_read_unlocked (GDBusWorker *worker)
+ {
+-  /* Note that we do need to keep trying to read even if close_expected is
+-   * true, because only failing a read causes us to signal 'closed'.
++  /* We need to keep trying to read, because only failing a read
++   * causes us to signal 'closed'.
+    */
+ 
+   /* if bytes_wanted is zero, it means start reading a message */
+@@ -1149,8 +1156,6 @@ write_message_finish (GAsyncResult   *res,
+ }
+ /* ---------------------------------------------------------------------------------------------------- */
+ 
+-static void continue_writing (GDBusWorker *worker);
+-
+ typedef struct
+ {
+   GDBusWorker *worker;
+@@ -1449,12 +1454,15 @@ continue_writing (GDBusWorker *worker)
+   /* if we want to close the connection, that takes precedence */
+   if (worker->pending_close_attempts != NULL)
+     {
+-      worker->close_expected = TRUE;
+-      worker->output_pending = PENDING_CLOSE;
++      /* close only once the read is finished */
++      if (worker->close_expected)
++        {
++          worker->output_pending = PENDING_CLOSE;
+ 
+-      g_io_stream_close_async (worker->stream, G_PRIORITY_DEFAULT,
+-                               NULL, iostream_close_cb,
+-                               _g_dbus_worker_ref (worker));
++          g_io_stream_close_async (worker->stream, G_PRIORITY_DEFAULT,
++                                   NULL, iostream_close_cb,
++                                   _g_dbus_worker_ref (worker));
++        }
+     }
+   else
+     {
+@@ -1562,7 +1570,6 @@ continue_writing_in_idle_cb (gpointer user_data)
+ /*
+  * @write_data: (transfer full) (allow-none):
+  * @flush_data: (transfer full) (allow-none):
+- * @close_data: (transfer full) (allow-none):
+  *
+  * Can be called from any thread
+  *
+@@ -1572,8 +1579,7 @@ continue_writing_in_idle_cb (gpointer user_data)
+ static void
+ schedule_writing_unlocked (GDBusWorker        *worker,
+                            MessageToWriteData *write_data,
+-                           FlushData          *flush_data,
+-                           CloseData          *close_data)
++                           FlushData          *flush_data)
+ {
+   if (write_data != NULL)
+     g_queue_push_tail (worker->write_queue, write_data);
+@@ -1581,10 +1587,6 @@ schedule_writing_unlocked (GDBusWorker        *worker,
+   if (flush_data != NULL)
+     worker->write_pending_flushes = g_list_prepend (worker->write_pending_flushes, flush_data);
+ 
+-  if (close_data != NULL)
+-    worker->pending_close_attempts = g_list_prepend (worker->pending_close_attempts,
+-                                                     close_data);
+-
+   /* If we had output pending, the next bit of output will happen
+    * automatically when it finishes, so we only need to do this
+    * if nothing was pending.
+@@ -1632,7 +1634,7 @@ _g_dbus_worker_send_message (GDBusWorker    *worker,
+   data->blob_size = blob_len;
+ 
+   g_mutex_lock (&worker->write_lock);
+-  schedule_writing_unlocked (worker, data, NULL, NULL);
++  schedule_writing_unlocked (worker, data, NULL);
+   g_mutex_unlock (&worker->write_lock);
+ }
+ 
+@@ -1712,13 +1714,12 @@ _g_dbus_worker_close (GDBusWorker         *worker,
+       (cancellable == NULL ? NULL : g_object_ref (cancellable));
+   close_data->result = (result == NULL ? NULL : g_object_ref (result));
+ 
+-  /* Don't set worker->close_expected here - we're in the wrong thread.
+-   * It'll be set before the actual close happens.
+-   */
+-  g_cancellable_cancel (worker->cancellable);
+   g_mutex_lock (&worker->write_lock);
+-  schedule_writing_unlocked (worker, NULL, NULL, close_data);
++  worker->pending_close_attempts = g_list_prepend (worker->pending_close_attempts,
++                                                   close_data);
+   g_mutex_unlock (&worker->write_lock);
++
++  g_cancellable_cancel (worker->cancellable);
+ }
+ 
+ /* This can be called from any thread - frees worker. Note that
+@@ -1788,7 +1789,7 @@ _g_dbus_worker_flush_sync (GDBusWorker    *worker,
+       data->number_to_wait_for = worker->write_num_messages_written + pending_writes;
+       g_mutex_lock (&data->mutex);
+ 
+-      schedule_writing_unlocked (worker, NULL, data, NULL);
++      schedule_writing_unlocked (worker, NULL, data);
+     }
+   g_mutex_unlock (&worker->write_lock);
+ 

Added: desktop/experimental/glib2.0/debian/patches/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/patches/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch?rev=40465&op=file
==============================================================================
--- desktop/experimental/glib2.0/debian/patches/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch	(added)
+++ desktop/experimental/glib2.0/debian/patches/gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch	[utf-8] Tue Feb 11 16:48:19 2014
@@ -0,0 +1,51 @@
+From: Simon McVittie <simon.mcvittie at collabora.co.uk>
+Date: Tue, 11 Feb 2014 14:23:15 +0000
+Subject: [PATCH] gdbus-connection: wait up to 10s to actually send a
+ message
+
+We previously waited 0.25s, which should be enough even on slow machines,
+but you never know; but we also now wait in 0.1s increments, so this test
+should actually be faster now.
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=724113
+Forwarded: yes
+---
+ gio/tests/gdbus-connection.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/gio/tests/gdbus-connection.c b/gio/tests/gdbus-connection.c
+index 9cd1e10..62edaa2 100644
+--- a/gio/tests/gdbus-connection.c
++++ b/gio/tests/gdbus-connection.c
+@@ -1093,10 +1093,13 @@ send_bogus_message (GDBusConnection *c, guint32 *out_serial)
+   g_assert_no_error (error);
+ }
+ 
++#define SLEEP_USEC (100 * 1000)
++
+ static gpointer
+ serials_thread_func (GDBusConnection *c)
+ {
+   guint32 message_serial;
++  guint i;
+ 
+   /* No calls on this thread yet */
+   g_assert_cmpint (g_dbus_connection_get_last_serial(c), ==, 0);
+@@ -1105,8 +1108,15 @@ serials_thread_func (GDBusConnection *c)
+   message_serial = 0;
+   send_bogus_message (c, &message_serial);
+ 
+-  /* Give it some time to actually send the message out */
+-  g_usleep (250000);
++  /* Give it some time to actually send the message out. 10 seconds
++   * should be plenty, even on slow machines. */
++  for (i = 0; i < 10 * G_USEC_PER_SEC / SLEEP_USEC; i++)
++    {
++      if (g_dbus_connection_get_last_serial(c) != 0)
++        break;
++
++      g_usleep (SLEEP_USEC);
++    }
+ 
+   g_assert_cmpint (g_dbus_connection_get_last_serial(c), !=, 0);
+   g_assert_cmpint (g_dbus_connection_get_last_serial(c), ==, message_serial);

Added: desktop/experimental/glib2.0/debian/patches/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/patches/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch?rev=40465&op=file
==============================================================================
--- desktop/experimental/glib2.0/debian/patches/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch	(added)
+++ desktop/experimental/glib2.0/debian/patches/gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch	[utf-8] Tue Feb 11 16:48:19 2014
@@ -0,0 +1,132 @@
+From: Simon McVittie <simon.mcvittie at collabora.co.uk>
+Date: Tue, 11 Feb 2014 14:22:04 +0000
+Subject: [PATCH] gdbus tests: wait up to 60s for gdbus-testserver to take
+ its bus name
+
+Previously, we waited up to 0.5s, but that can fail on slow architectures
+like ARM; now we wait up to 60s in 0.1s increments.
+
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=724113
+Forwarded: yes
+---
+ gio/tests/gdbus-connection-loss.c | 28 +++++++++++++++++++++++++---
+ gio/tests/gdbus-threading.c       | 27 ++++++++++++++++++++++-----
+ 2 files changed, 47 insertions(+), 8 deletions(-)
+
+diff --git a/gio/tests/gdbus-connection-loss.c b/gio/tests/gdbus-connection-loss.c
+index ed4142d..1adbc15 100644
+--- a/gio/tests/gdbus-connection-loss.c
++++ b/gio/tests/gdbus-connection-loss.c
+@@ -58,11 +58,20 @@ on_timeout (gpointer user_data)
+   return FALSE; /* remove source */
+ }
+ 
++static gboolean
++give_up (gpointer data)
++{
++  g_error ("%s", (const gchar *) data);
++  g_return_val_if_reached (TRUE);
++}
++
+ static void
+ test_connection_loss (void)
+ {
+   GDBusProxy *proxy;
+   GError *error;
++  gchar *name_owner;
++  guint id;
+ 
+   error = NULL;
+   proxy = g_dbus_proxy_new_sync (c,
+@@ -75,6 +84,22 @@ test_connection_loss (void)
+                                  &error);
+   g_assert_no_error (error);
+ 
++  id = g_timeout_add_seconds (60, give_up,
++      "waited more than ~ 60s for gdbus-testserver to take its bus name");
++
++  while (TRUE)
++    {
++      name_owner = g_dbus_proxy_get_name_owner (proxy);
++
++      if (name_owner != NULL)
++        break;
++
++      g_main_context_iteration (NULL, TRUE);
++    }
++
++  g_source_remove (id);
++  g_free (name_owner);
++
+   error = NULL;
+   g_dbus_proxy_call (proxy,
+                      "Sleep",
+@@ -126,9 +151,6 @@ main (int   argc,
+   g_assert (g_spawn_command_line_async (path, NULL));
+   g_free (path);
+ 
+-  /* wait for the service to come up */
+-  usleep (500 * 1000);
+-
+   /* Create the connection in the main thread */
+   error = NULL;
+   c = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error);
+diff --git a/gio/tests/gdbus-threading.c b/gio/tests/gdbus-threading.c
+index 5851114..0836365 100644
+--- a/gio/tests/gdbus-threading.c
++++ b/gio/tests/gdbus-threading.c
+@@ -412,6 +412,13 @@ test_method_calls_on_proxy (GDBusProxy *proxy)
+     }
+ }
+ 
++static gboolean
++give_up (gpointer data)
++{
++  g_error ("%s", (const gchar *) data);
++  g_return_val_if_reached (TRUE);
++}
++
+ static void
+ test_method_calls_in_thread (void)
+ {
+@@ -419,6 +426,7 @@ test_method_calls_in_thread (void)
+   GDBusConnection *connection;
+   GError *error;
+   gchar *name_owner;
++  guint id;
+ 
+   error = NULL;
+   connection = g_bus_get_sync (G_BUS_TYPE_SESSION,
+@@ -436,8 +444,20 @@ test_method_calls_in_thread (void)
+                                  &error);
+   g_assert_no_error (error);
+ 
+-  name_owner = g_dbus_proxy_get_name_owner (proxy);
+-  g_assert_cmpstr (name_owner, !=, NULL);
++  id = g_timeout_add_seconds (60, give_up,
++      "waited more than ~ 60s for gdbus-testserver to take its bus name");
++
++  while (TRUE)
++    {
++      name_owner = g_dbus_proxy_get_name_owner (proxy);
++
++      if (name_owner != NULL)
++        break;
++
++      g_main_context_iteration (NULL, TRUE);
++    }
++
++  g_source_remove (id);
+   g_free (name_owner);
+ 
+   test_method_calls_on_proxy (proxy);
+@@ -592,9 +612,6 @@ main (int   argc,
+   g_assert (g_spawn_command_line_async (path, NULL));
+   g_free (path);
+ 
+-  /* wait for the service to come up */
+-  usleep (500 * 1000);
+-
+   /* Create the connection in the main thread */
+   error = NULL;
+   c = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error);

Modified: desktop/experimental/glib2.0/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/patches/series?rev=40465&op=diff
==============================================================================
--- desktop/experimental/glib2.0/debian/patches/series	[utf-8] (original)
+++ desktop/experimental/glib2.0/debian/patches/series	[utf-8] Tue Feb 11 16:48:19 2014
@@ -15,3 +15,7 @@
 tests-move-param-implement-to-m-slow.patch
 Don-t-use-a-parallel-build-for-the-documentation.patch
 Do-not-attempt-to-autolaunch-a-session-dbus-daemon-w.patch
+gdbus-Let-the-pending-read-finish-before-closing-the.patch
+Fix-races-in-unix-signal-dispatch.patch
+gdbus-tests-wait-up-to-60s-for-gdbus-testserver-to-t.patch
+gdbus-connection-wait-up-to-10s-to-actually-send-a-m.patch




More information about the pkg-gnome-commits mailing list