Bug 241959 - libgnome - gnome_program_init triggers memory corruption warnings
Summary: libgnome - gnome_program_init triggers memory corruption warnings
Alias: None
Product: Fedora
Classification: Fedora
Component: glib2
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Matthias Clasen
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2007-05-31 22:52 UTC by Michal Jaegermann
Modified: 2007-11-30 22:12 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2007-08-09 14:57:25 UTC

Attachments (Terms of Use)

Description Michal Jaegermann 2007-05-31 22:52:20 UTC
Description of problem:

It appears that after an update to glib2-2.13.2-1.fc8 some stricter
memory checks are performed and during updates the following started
to show up (I got that twice in the latest series of updates):

***MEMORY-WARNING***: gconftool-2[3563]: GSlice: g_thread_init()
must be called before all other GLib functions; memory corruption
due to late invocation of g_thread_init() has been detected; this
program is likely to crash, leak or unexpectedly abort soon...

Version-Release number of selected component (if applicable):

Comment 1 David Nielsen 2007-05-31 23:11:29 UTC
This isn't a GConf specific issue I think, I'm seeing this in the output of Empathy:

***MEMORY-WARNING***: [23578]: GSlice: g_thread_init() must be called before all
other GLib functions; memory corruption due to late invocation of
g_thread_init() has been detected; this program is likely to crash, leak or
unexpectedly abort soon...

Comment 2 Michal Jaegermann 2007-05-31 23:18:53 UTC
Yes, checking my ~/.xsession-errors I see now the same warnings for


and multiple times for gconftool-2 as well.

Comment 3 David Nielsen 2007-05-31 23:42:12 UTC
I think a more proper place to file this might be with glib since that holds the
GSlice magic which is issuing the warning, if it isn't a glib problem the glib
gurus will likely be of help tracking the issue down.

Comment 4 Peter Gordon 2007-06-01 02:37:15 UTC
Reassigning to the libgnome component; as GDB says that multiple programs that
do this are all causing the problem in a call to gnome_program_init.  If this
would be better in glib2, please reassign it as needed.

If it helps, Gedit's backtrace is as follows:

Breakpoint 2 at 0x3dfde028d0: file gthread-impl.c, line 296.
Pending breakpoint "g_thread_init" resolved
[Switching to Thread 46912496312016 (LWP 3869)]

Breakpoint 2, g_thread_init (init=0x0) at gthread-impl.c:296
296       if (thread_system_already_initialized)
(gdb) thread apply all bt full

Thread 1 (Thread 46912496312016 (LWP 3869)):
#0  g_thread_init (init=0x0) at gthread-impl.c:296
No locals.
#1  0x0000003e0120e6ac in gnome_program_init (app_id=0x48039f "gedit",
app_version=0x4756aa "2.18.1", 
    module_info=0x3e0249b2a0, argc=1, argv=0x7fffc55f9d48,
first_property_name=0x47569a "goption-context")
    at gnome-program.c:1745
        program = (GnomeProgram *) 0x3dfaec29a0
        args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area =
0x7fffc55f9b80, reg_save_area = 0x7fffc55f9a60}}
#2  0x00000000004254c5 in main (argc=1, argv=0x7fffc55f9d48) at gedit.c:459
        program = <value optimized out>
        context = (GOptionContext *) 0x6ad870
        window = <value optimized out>
        app = <value optimized out>
        restored = <value optimized out>
        __PRETTY_FUNCTION__ = "main"

I get similar backtraces with just about every libgnome-using application,
including (though not limitied to ) dasher, gnome-terminal, Scribes, Evolution,
et al.

Comment 5 Michal Jaegermann 2007-06-01 04:05:49 UTC
In the light from what we know now I changed "Summary" line to what
appears more fitting.

Comment 6 Ray Strode [halfline] 2007-06-01 15:10:16 UTC
This is a bit of glib regression.  glib lost some of its support for late thread
initialization support when the gslice apis got added.

Comment 7 Valdis Kletnieks 2007-06-01 17:02:24 UTC
Should this be marked DUP of #241925?

Comment 8 Paul Dickson 2007-06-01 23:30:30 UTC
Reverting these packages allowed gnucash and gnumeric to run:
 glib2                   i386       2.13.2-1.fc8     development       787 k
 glib2-devel             i386       2.13.2-1.fc8     development       923 k
 gtk2                    i386       2.11.0-1.fc8     development       6.7 M
 gtk2-devel              i386       2.11.0-1.fc8     development       3.1 M
 gtk2-engines            i386       2.11.0-1.fc8     development       426 k
 gtkhtml3                i386       3.15.2-1.fc8     development       930 k
 gtkhtml3-devel          i386       3.15.2-1.fc8     development        26 k
 system-config-printer   i386       0.7.65-1.fc8     development       178 k
 system-config-printer-libs  i386   0.7.65-1.fc8     development       374 k

The latter 2 were needed to enable printing, but if I try disabling duplex
printing in gnucash, it still crashes.

Comment 9 Peter Gordon 2007-06-02 04:14:18 UTC
[Fixing typo in Summary.]

Comment 10 Matthew Miller 2007-06-04 02:47:22 UTC
FWIW, inkscape is another victim.

Comment 11 Matthias Clasen 2007-08-09 14:57:25 UTC
The glib warning has been removed in recent glib builds

Note You need to log in before you can comment on or make changes to this bug.