Comment 30 for bug 1160569

Revision history for this message
In , Mh+mozilla (mh+mozilla) wrote :

(In reply to Chris Coulson from comment #0)
> On Linux, the glib slice allocator is disabled in |XREMain::XRE_main| by
> calling |g_slice_set_config| (see bug 431221). However, this no longer works
> since glib 2.35 because libgobject (which libxul depends on) now has a
> static initializer which indirectly initializes the slice allocator before
> |main| is reached (in order to automatically initialize the gobject dynamic
> type system). This means that the call to g_slice_set_config always fails
> with the following assertion:
>
> (process:24722): GLib-CRITICAL **: g_slice_set_config: assertion
> `sys_page_size == 0' failed

That's not what the glib code suggests. That error (sys_page_size == 0) happens because the slice allocator is *not* initialized. If it was initialized, sys_page_size would be set (it is set in g_slice_init_nomessage).