After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 444121 - g_get_user_special_dir deadlocks
g_get_user_special_dir deadlocks
Status: RESOLVED FIXED
Product: glib
Classification: Platform
Component: general
unspecified
Other Linux
: Normal critical
: ---
Assigned To: gtkdev
gtkdev
Depends on:
Blocks: 444087
 
 
Reported: 2007-06-04 21:31 UTC by Christian Persch
Modified: 2007-06-05 17:35 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (2.91 KB, patch)
2007-06-05 06:58 UTC, Matthias Clasen
none Details | Review

Description Christian Persch 2007-06-04 21:31:42 UTC


  • #3 pthread_mutex_lock
    from /lib/tls/i686/cmov/libpthread.so.0
  • #4 pthread_mutex_lock
    from /lib/tls/i686/cmov/libc.so.6
  • #5 IA__g_get_user_config_dir
    at gutils.c line 2030
  • #6 IA__g_get_user_special_dir
    at gutils.c line 2224

g_get_user_special_dir takes the g_utils_global lock, calls maybe_expire_user_special_dirs, which can call g_get_user_config_dir, which tries to re-lock the g_utils_global lock.
Comment 1 Matthias Clasen 2007-06-05 06:58:12 UTC
Created attachment 89383 [details] [review]
patch

Does this patch work for you ?
Comment 2 Matthias Clasen 2007-06-05 17:35:56 UTC
2007-06-05  Matthias Clasen  <mclasen@redhat.com>

        * glib/gutils.c (g_get_user_special_dir): Don't deadlock
        when running with threads.  (#444121, Christian Persch)