Closed Bug 1027497 Opened 10 years ago Closed 10 years ago

Layers.TextureSerialization gtest crashes with gtk3

Categories

(Toolkit :: Startup and Profile System, defect)

All
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla33

People

(Reporter: glandium, Assigned: glandium)

References

Details

Attachments

(1 file, 1 obsolete file)

Fontconfig error: Cannot load default config file

(process:1336): GLib-GObject-CRITICAL **: ../../../glib-2.28.8/gobject/gtype.c:2708: You forgot to call g_type_init()

(process:1336): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(process:1336): GLib-GObject-CRITICAL **: ../../../glib-2.28.8/gobject/gtype.c:2708: You forgot to call g_type_init()

(process:1336): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

(process:1336): GLib-GObject-CRITICAL **: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed
PROCESS-CRASH | gtest | application crashed [@ libgdk-3.so.0.0.12 + 0x20a90]
Crash dump filename: /builds/slave/try-l64-0000000000000000000000/build/obj-firefox/testing/gtest/6c248a79-6a79-71f8-5493817d-4bfda57a.dmp
Operating system: Linux
                  0.0.0 Linux 2.6.32-220.7.1.el6.x86_64 #1 SMP Wed Mar 7 00:52:02 GMT 2012 x86_64
CPU: amd64
     family 6 model 42 stepping 7
     4 CPUs

Crash reason:  SIGSEGV
Crash address: 0x0

Thread 0 (crashed)
 0  libgdk-3.so.0.0.12 + 0x20a90
    rbx = 0x00007fff8dbfbd08   r12 = 0x0000000000000000
    r13 = 0x00007fc739aff040   r14 = 0x00007fff8dbfbd00
    r15 = 0x00000146b2695553   rip = 0x00007fc744050a90
    rsp = 0x00007fff8dbfbbf8   rbp = 0x00007fff8dbfbce0
    Found by: given as instruction pointer in context
 1  libgdk-3.so.0.0.12 + 0x20c08
    rip = 0x00007fc744050c09   rsp = 0x00007fff8dbfbc00
    rbp = 0x00007fff8dbfbce0
    Found by: stack scanning
 2  libxul.so + 0xdcdb47
    rip = 0x00007fc73c4beb48   rsp = 0x00007fff8dbfbc10
    rbp = 0x00007fff8dbfbce0
    Found by: stack scanning
 3  libxul.so + 0x2509d57
    rip = 0x00007fc73dbfad58   rsp = 0x00007fff8dbfbc28
    rbp = 0x00007fff8dbfbce0
    Found by: stack scanning
 4  libxul.so + 0xe246c9
    rip = 0x00007fc73c5156ca   rsp = 0x00007fff8dbfbc50
    rbp = 0x00007fff8dbfbce0
    Found by: stack scanning
 5  libc-2.12.so + 0x352d5
    rip = 0x00007fc7460f82d6   rsp = 0x00007fff8dbfbc70
    rbp = 0x00007fff8dbfbce0
    Found by: stack scanning
 6  libxul.so + 0x2509d82
    rip = 0x00007fc73dbfad83   rsp = 0x00007fff8dbfbc80


This is the actual backtrace:

#0  gdk_display_manager_get_default_display (manager=0x0) at ../../../gtk+-3.0.12/gdk/gdkdisplaymanager.c:266
#1  0x00007f21e3f50c09 in gdk_screen_get_default () at ../../../gtk+-3.0.12/gdk/gdkdisplaymanager.c:302
#2  0x00007f21dc3c5b4a in gfxPlatformGtk::CreateOffscreenSurface (this=0x7f21d6ed37d0, size=..., contentType=<optimized out>)
    at /tmp/try/gfx/thebes/gfxPlatformGtk.cpp:93

The problem is really about those GObject critical messages, which make g_type registration fail because the type system is not initialized.
Attached patch Initialize Gtk before starting gtests (obsolete) (deleted) — Splinter Review
This fixes it locally. There might be something better to do, though (like initializing glib only) but I'm not sure it's really better.
Attachment #8442637 - Flags: review?(karlt)
Assignee: nobody → mh+mozilla
Status: NEW → ASSIGNED
Hmm, gdk_screen_get_default() returns null nicely with GDK2, but GDK3 tries to g_object_new (GDK_TYPE_DISPLAY_MANAGER, NULL).

I wonder why GTest is run from XRE_mainInit(), but GObject/Xlib/GTK initialization doesn't happen until XRE_mainStartup().
Component: Widget: Gtk → Startup and Profile System
Product: Core → Toolkit
Version: unspecified → Trunk
Comment on attachment 8442637 [details] [diff] [review]
Initialize Gtk before starting gtests

I don't expect this to compile on non-GTK systems.

Perhaps GObject/Xlib/GTK initialization should move from XRE_mainStartup() to
XRE_mainInit().  I don't know.
Attachment #8442637 - Flags: review?(karlt) → review-
Attachment #8442637 - Attachment is obsolete: true
Attached patch bug1027497 (deleted) — Splinter Review
Attachment #8443880 - Flags: review?(bgirard)
Attachment #8443880 - Flags: review?(bgirard) → review+
https://hg.mozilla.org/mozilla-central/rev/4eaf3ac3704e
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla33
Blocks: 1034064
No longer blocks: 1034064
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: