projects
/
platform
/
upstream
/
glib.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f662e7e
)
Fix deadlock in threaded resolver
author
Alexander Larsson
<alexl@redhat.com>
Fri, 15 May 2009 08:05:55 +0000
(10:05 +0200)
committer
Alexander Larsson
<alexl@redhat.com>
Fri, 15 May 2009 08:05:55 +0000
(10:05 +0200)
When you're using the threaded resolver and using a sync call
without a cancellable the resolve_sync forgot to unlock the
initial req->mutex lock, leading to a deadlock when unrefing
the request.
gio/gthreadedresolver.c
patch
|
blob
|
history
diff --git
a/gio/gthreadedresolver.c
b/gio/gthreadedresolver.c
index 6732612e199174468389f2d2986db6f19fa38967..c259b572489620be140ee646a8d32909aa467bc4 100644
(file)
--- a/
gio/gthreadedresolver.c
+++ b/
gio/gthreadedresolver.c
@@
-319,6
+319,7
@@
resolve_sync (GThreadedResolver *gtr,
if (!req->cancellable || !gtr->thread_pool)
{
req->resolve_func (req, error);
+ g_mutex_unlock (req->mutex);
return;
}