Bug 32603 - [GTK] segfault during volume notification
Summary: [GTK] segfault during volume notification
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC All
: P2 Normal
Assignee: Nobody
Depends on:
Reported: 2009-12-16 02:19 PST by Philippe Normand
Modified: 2009-12-17 04:19 PST (History)
3 users (show)

See Also:

volume/duration notifications support (7.53 KB, patch)
2009-12-16 10:08 PST, Philippe Normand
gns: review+
gns: commit-queue-
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Philippe Normand 2009-12-16 02:19:03 PST
If DRT tests media/video-src-source.html multiple times it segfaults with following stacktrace:

#0  0x015657b0 in WebCore::MediaPlayer::volumeChanged() () from /home/phil/gst/jhbuild/build/WebKit/.libs/libwebkit-1.0.so.2
No symbol table info available.
#1  0x01771e6d in WebCore::notify_volume_idle_cb(WebCore::MediaPlayer*) () from /home/phil/gst/jhbuild/build/WebKit/.libs/libwebkit-1.0.so.2
No symbol table info available.
#2  0x00bd6f01 in g_idle_dispatch (source=0x858a8c8, callback=0xd, user_data=0xb6900c60) at gmain.c:4065
No locals.
#3  0x00bd8c88 in g_main_dispatch (context=0x80b9308) at gmain.c:1960
        dispatch = 0xbd6ee0 <g_idle_dispatch>
        user_data = 0xb6900c60
        callback = 0x1771e50 <WebCore::notify_volume_idle_cb(WebCore::MediaPlayer*)>
        cb_funcs = 0xc7431c
        cb_data = 0x8583c18
        current_source_link = {data = 0x858a8c8, next = 0x0}
        source = 0x858a8c8
        current = 0x80d1148
        i = 1
#4  IA__g_main_context_dispatch (context=0x80b9308) at gmain.c:2513
No locals.
#5  0x00bdc530 in g_main_context_iterate (context=0x80b9308, block=<value optimised out>, dispatch=1, self=0x808a218) at gmain.c:2591
        max_priority = 200
        timeout = 0
        some_ready = 1
        nfds = <value optimised out>
        allocated_nfds = <value optimised out>
        fds = <value optimised out>
        __PRETTY_FUNCTION__ = "g_main_context_iterate"
#6  0x00bdc99f in IA__g_main_loop_run (loop=0xad504e10) at gmain.c:2799
        self = 0x808a218
        __PRETTY_FUNCTION__ = "IA__g_main_loop_run"
#7  0x00894779 in IA__gtk_main () at gtkmain.c:1217
        tmp_list = 0xad505470
        functions = 0x0
        init = 0x258
        loop = 0xad504e10
#8  0x08054f1c in runTest(std::string const&) ()
No symbol table info available.
#9  0x080556a6 in main ()
No symbol table info available.
Comment 1 Gustavo Noronha (kov) 2009-12-16 02:20:30 PST
We have reverted the patch for the time being, since we didn't find a fix in a timely manner.
Comment 2 Philippe Normand 2009-12-16 10:08:44 PST
Created attachment 44989 [details]
volume/duration notifications support

I reapplied the patch from Bug 30377 also did some minor coding style
fixes. It seems that setting the volume on playbin and just after
connect to the notify::volume signal was causing problems. Anyway it
was not needed as by default it is 1.0 both in playbin and in the
Comment 3 WebKit Review Bot 2009-12-16 10:13:19 PST
Attachment 44989 [details] did not pass style-queue:

Failed to run "WebKitTools/Scripts/check-webkit-style" exit_code: 1
WebCore/platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:923:  Use 0 instead of NULL.  [readability/null] [5]
Total errors found: 1
Comment 4 Philippe Normand 2009-12-17 04:19:19 PST
Landed as r52247.