summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/checksums.ini4
-rw-r--r--recipes/glib-2.0/bug-556515.patch35
-rw-r--r--recipes/glib-2.0/glib-2.0-2.22.1/atomic-thumb.patch (renamed from recipes/glib-2.0/glib-2.0-2.22.0/atomic-thumb.patch)0
-rw-r--r--recipes/glib-2.0/glib-2.0-2.22.1/bug-556515.patch (renamed from recipes/glib-2.0/glib-2.0-2.22.0/bug-556515.patch)0
-rw-r--r--recipes/glib-2.0/glib-2.0-2.22.1/configure-libtool.patch (renamed from recipes/glib-2.0/glib-2.0-2.22.0/configure-libtool.patch)0
-rw-r--r--recipes/glib-2.0/glib-2.0-2.22.1/gobject.patch (renamed from recipes/glib-2.0/glib-2.0-2.22.0/gobject.patch)0
-rw-r--r--recipes/glib-2.0/glib-2.0-native_2.22.1.bb (renamed from recipes/glib-2.0/glib-2.0-native_2.22.0.bb)0
-rw-r--r--recipes/glib-2.0/glib-2.0_2.22.1.bb (renamed from recipes/glib-2.0/glib-2.0_2.22.0.bb)0
8 files changed, 39 insertions, 0 deletions
diff --git a/conf/checksums.ini b/conf/checksums.ini
index 949dbf2159..bb61d09889 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -8270,6 +8270,10 @@ sha256=8b4750523a07102c90c7eecf1743f852ce2aadcb7a43284a9e06baf70beb9b8a
md5=e0bc5b08d467cc3763550923087772d3
sha256=f77cda95fa7cea5e7ad189ac18a165bb3886a66bc5f97c6398a9e5dc16c8a671
+[http://ftp.gnome.org/pub/GNOME/sources/glib/2.22/glib-2.22.1.tar.bz2]
+md5=12297a7da577321647b38ade0593cb3c
+sha256=4898d340c830a5903115412ec5b95eb03b410efdfb1c5316d36f12f8be85577d
+
[ftp://ftp.gtk.org/pub/gtk/v2.4/glib-2.4.6.tar.bz2]
md5=a45db7d82480da431f6cd00ea041a534
sha256=d2ca79bac06a625d9276b48492c2c1caccf7f8962f9b331b39796391013e72f2
diff --git a/recipes/glib-2.0/bug-556515.patch b/recipes/glib-2.0/bug-556515.patch
new file mode 100644
index 0000000000..0af15a6f8f
--- /dev/null
+++ b/recipes/glib-2.0/bug-556515.patch
@@ -0,0 +1,35 @@
+https://bugzilla.gnome.org/show_bug.cgi?id=556515 - g_object_unref race condition
+
+
+diff --git /tmp/gobject.c glib-2.21.6/gobject/gobject.c
+index 454d8c2..75f479c 100644
+--- /tmp/gobject.c
++++ glib-2.21.6/gobject/gobject.c
+@@ -2380,11 +2380,12 @@ g_object_unref (gpointer _object)
+ old_ref = g_atomic_int_get (&object->ref_count);
+ if (old_ref > 1)
+ {
++ gboolean do_toggle_ref_notify = (old_ref == 2 && OBJECT_HAS_TOGGLE_REF (object));
+ if (!g_atomic_int_compare_and_exchange ((int *)&object->ref_count, old_ref, old_ref - 1))
+ goto retry_atomic_decrement1;
+
+ /* if we went from 2->1 we need to notify toggle refs if any */
+- if (old_ref == 2 && OBJECT_HAS_TOGGLE_REF (object))
++ if (do_toggle_ref_notify)
+ toggle_refs_notify (object, TRUE);
+ }
+ else
+@@ -2397,11 +2398,12 @@ g_object_unref (gpointer _object)
+ old_ref = g_atomic_int_get ((int *)&object->ref_count);
+ if (old_ref > 1)
+ {
++ gboolean do_toggle_ref_notify = (old_ref == 2 && OBJECT_HAS_TOGGLE_REF (object));
+ if (!g_atomic_int_compare_and_exchange ((int *)&object->ref_count, old_ref, old_ref - 1))
+ goto retry_atomic_decrement2;
+
+ /* if we went from 2->1 we need to notify toggle refs if any */
+- if (old_ref == 2 && OBJECT_HAS_TOGGLE_REF (object))
++ if (do_toggle_ref_notify)
+ toggle_refs_notify (object, TRUE);
+
+ return;
diff --git a/recipes/glib-2.0/glib-2.0-2.22.0/atomic-thumb.patch b/recipes/glib-2.0/glib-2.0-2.22.1/atomic-thumb.patch
index d7aa08821f..d7aa08821f 100644
--- a/recipes/glib-2.0/glib-2.0-2.22.0/atomic-thumb.patch
+++ b/recipes/glib-2.0/glib-2.0-2.22.1/atomic-thumb.patch
diff --git a/recipes/glib-2.0/glib-2.0-2.22.0/bug-556515.patch b/recipes/glib-2.0/glib-2.0-2.22.1/bug-556515.patch
index b03a0afb3f..b03a0afb3f 100644
--- a/recipes/glib-2.0/glib-2.0-2.22.0/bug-556515.patch
+++ b/recipes/glib-2.0/glib-2.0-2.22.1/bug-556515.patch
diff --git a/recipes/glib-2.0/glib-2.0-2.22.0/configure-libtool.patch b/recipes/glib-2.0/glib-2.0-2.22.1/configure-libtool.patch
index 3ba79b8986..3ba79b8986 100644
--- a/recipes/glib-2.0/glib-2.0-2.22.0/configure-libtool.patch
+++ b/recipes/glib-2.0/glib-2.0-2.22.1/configure-libtool.patch
diff --git a/recipes/glib-2.0/glib-2.0-2.22.0/gobject.patch b/recipes/glib-2.0/glib-2.0-2.22.1/gobject.patch
index d9c7b7e791..d9c7b7e791 100644
--- a/recipes/glib-2.0/glib-2.0-2.22.0/gobject.patch
+++ b/recipes/glib-2.0/glib-2.0-2.22.1/gobject.patch
diff --git a/recipes/glib-2.0/glib-2.0-native_2.22.0.bb b/recipes/glib-2.0/glib-2.0-native_2.22.1.bb
index b5ce9da849..b5ce9da849 100644
--- a/recipes/glib-2.0/glib-2.0-native_2.22.0.bb
+++ b/recipes/glib-2.0/glib-2.0-native_2.22.1.bb
diff --git a/recipes/glib-2.0/glib-2.0_2.22.0.bb b/recipes/glib-2.0/glib-2.0_2.22.1.bb
index 5f915c2ee5..5f915c2ee5 100644
--- a/recipes/glib-2.0/glib-2.0_2.22.0.bb
+++ b/recipes/glib-2.0/glib-2.0_2.22.1.bb