diff options
author | marcus <marcus@df743ca5-7f9a-e211-a948-0013205c9059> | 2012-06-28 21:51:29 +0800 |
---|---|---|
committer | marcus <marcus@df743ca5-7f9a-e211-a948-0013205c9059> | 2012-06-28 21:51:29 +0800 |
commit | 04c1c479bc38ccdf00aed37ac5754e8fe29f0c41 (patch) | |
tree | 4bdf75049d0599b0dd6297df18ee3b3674fef727 /devel/glib20 | |
parent | 3af458ef65af7abadf4b9455565811afee064234 (diff) | |
download | marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.tar marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.tar.gz marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.tar.bz2 marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.tar.lz marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.tar.xz marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.tar.zst marcuscom-ports-04c1c479bc38ccdf00aed37ac5754e8fe29f0c41.zip |
Incorporate a patch from upstream to fix a mutex lock order reversal.
git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@16970 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'devel/glib20')
-rw-r--r-- | devel/glib20/Makefile | 4 | ||||
-rw-r--r-- | devel/glib20/files/patch-gio_gtlsinteraction.c | 45 |
2 files changed, 47 insertions, 2 deletions
diff --git a/devel/glib20/Makefile b/devel/glib20/Makefile index 4b95f66cd..4fd291dd2 100644 --- a/devel/glib20/Makefile +++ b/devel/glib20/Makefile @@ -3,13 +3,13 @@ # Whom: Vanilla I. Shu <vanilla@FreeBSD.org> # # $FreeBSD$ -# $MCom: ports/devel/glib20/Makefile,v 1.222 2012/05/16 08:35:55 kwm Exp $ +# $MCom: ports/devel/glib20/Makefile,v 1.223 2012/05/27 15:16:28 kwm Exp $ # # !! DON'T FORGET ABOUT devel/gio-fam-backend !! PORTNAME= glib PORTVERSION= 2.32.3 -PORTREVISION?= 2 +PORTREVISION?= 3 CATEGORIES= devel MASTER_SITES= GNOME DIST_SUBDIR= gnome2 diff --git a/devel/glib20/files/patch-gio_gtlsinteraction.c b/devel/glib20/files/patch-gio_gtlsinteraction.c new file mode 100644 index 000000000..5f1bb18d3 --- /dev/null +++ b/devel/glib20/files/patch-gio_gtlsinteraction.c @@ -0,0 +1,45 @@ +From 1ae30806403e556c8297a16a25a18687d9e80f89 Mon Sep 17 00:00:00 2001 +From: Stef Walter <stefw@gnome.org> +Date: Thu, 28 Jun 2012 14:41:39 +0200 +Subject: [PATCH] GTlsInteraction: Fix incorrect locking of mutex + + * Fix incorrect locking of mutex in g_tls_interaction_invoke_ask_password() + +https://bugzilla.gnome.org/show_bug.cgi?id=678758 +--- + gio/gtlsinteraction.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/gio/gtlsinteraction.c b/gio/gtlsinteraction.c +index 41574b7..e921b81 100644 +--- gio/gtlsinteraction.c ++++ gio/gtlsinteraction.c +@@ -321,6 +321,7 @@ g_tls_interaction_invoke_ask_password (GTlsInteraction *interaction, + GTlsInteractionResult result; + InvokeClosure *closure; + GTlsInteractionClass *klass; ++ gboolean complete; + + g_return_val_if_fail (G_IS_TLS_INTERACTION (interaction), G_TLS_INTERACTION_UNHANDLED); + g_return_val_if_fail (G_IS_TLS_PASSWORD (password), G_TLS_INTERACTION_UNHANDLED); +@@ -348,12 +349,16 @@ g_tls_interaction_invoke_ask_password (GTlsInteraction *interaction, + */ + if (g_main_context_acquire (interaction->priv->context)) + { +- while (!closure->complete) ++ for (;;) + { ++ g_mutex_lock (&closure->mutex); ++ complete = closure->complete; + g_mutex_unlock (&closure->mutex); ++ if (complete) ++ break; + g_main_context_iteration (interaction->priv->context, TRUE); +- g_mutex_lock (&closure->mutex); + } ++ + g_main_context_release (interaction->priv->context); + + if (closure->error) +-- +1.7.10.2 |