Bug 141716

Summary: [GStreamer] GLib-GObject-WARNING **: cannot register existing type 'ClutterGstVideoSink'
Product: WebKit Reporter: Michael Catanzaro <mcatanzaro>
Component: MediaAssignee: Michael Catanzaro <mcatanzaro>
Status: RESOLVED DUPLICATE    
Severity: Major CC: mcatanzaro
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Linux   

Description Michael Catanzaro 2015-02-17 11:21:54 PST
This is a regression introduced sometime in the past month. Some pages like https://groups.google.com/forum/#!search/libseccomp can no longer be loaded in WebKitGTK+:

(WebKitWebProcess:30350): GLib-GObject-WARNING **: cannot register existing type 'ClutterGstVideoSink'

(WebKitWebProcess:30350): GLib-GObject-CRITICAL **: g_type_add_interface_static: assertion 'G_TYPE_IS_INSTANTIATABLE (instance_type)' failed

(WebKitWebProcess:30350): GLib-CRITICAL **: g_once_init_leave: assertion 'result != 0' failed

(WebKitWebProcess:30350): GStreamer-CRITICAL **: gst_element_register: assertion 'g_type_is_a (type, GST_TYPE_ELEMENT)' failed

The page continues loading forever.
Comment 1 Michael Catanzaro 2015-02-17 11:24:24 PST
Ah drat, I don't have a debug build so no backtrace. Will try to post one soon.
Comment 2 Michael Catanzaro 2015-02-17 16:59:15 PST
I'm not sure how we try to register the type twice, but it looks like this is only a problem for in-process plugin scanning, which only I use because we only do this with seccomp filters enabled. And we need to stop doing in-process plugin scanning before we turn on seccomp filters by default, see bug #140131 which is a priority for me. So, I won't bother any further with this.

                Stack trace of thread 4166:
                #0  0x00007f68a68f6cd5 _g_log_abort (libglib-2.0.so.0)
                #1  0x00007f68a68f7bb7 g_logv (libglib-2.0.so.0)
                #2  0x00007f68a68f7ca5 g_log (libglib-2.0.so.0)
                #3  0x00007f68a68f7ce6 g_return_if_fail_warning (libglib-2.0.so.0)
                #4  0x00007f68a6c2fb11 g_type_add_interface_static (libgobject-2.0.so.0)
                #5  0x00007f67eba77d84 clutter_gst_video_sink_get_type (libgstclutter.so)
                #6  0x00007f67eba77bb5 plugin_init (libgstclutter.so)
                #7  0x00007f68a3f16261 gst_plugin_register_func (libgstreamer-1.0.so.0)
                #8  0x00007f68a3f1722c gst_plugin_load_file (libgstreamer-1.0.so.0)
                #9  0x00007f68a3f28c52 gst_registry_scan_plugin_file (libgstreamer-1.0.so.0)
                #10 0x00007f68a3f29580 gst_registry_scan_path_level (libgstreamer-1.0.so.0)
                #11 0x00007f68a3f2963a gst_registry_scan_path_internal (libgstreamer-1.0.so.0)
                #12 0x00007f68a3f2a0b0 scan_and_update_registry (libgstreamer-1.0.so.0)
                #13 0x00007f68a3f2a7d3 ensure_current_registry (libgstreamer-1.0.so.0)
                #14 0x00007f68a3f2a8c8 gst_update_registry (libgstreamer-1.0.so.0)
                #15 0x00007f68a3eb6426 init_post (libgstreamer-1.0.so.0)
                #16 0x00007f68a68fe37c g_option_context_parse (libglib-2.0.so.0)
                #17 0x00007f68a3eb5830 gst_init_check (libgstreamer-1.0.so.0)
                #18 0x00007f68b0d1abd4 _ZN7WebCore19initializeGStreamerEv (libwebkit2gtk-4.0.so.37)
                #19 0x00007f68b0d1dbcf _ZN7WebCore44initializeGStreamerAndRegisterWebKitElementsEv (libwebkit2gtk-4.0.so.37)
                #20 0x00007f68b0d1dca4 _ZN7WebCore27MediaPlayerPrivateGStreamer11isAvailableEv (libwebkit2gtk-4.0.so.37)
                #21 0x00007f68b0d1db85 _ZN7WebCore27MediaPlayerPrivateGStreamer19registerMediaEngineEPFvPFN3WTF10PassOwnPtrINS_27MediaPlayerPrivateInterfaceEEEPNS_11MediaPlayerEEPFvRNS1_7HashSetINS1_6StringENS1_10StringHashENS1_10HashTraitsISA_EEEEEPFNS5_12SupportsTypeERKNS_28MediaEngineSupportParametersEEPFvRNS1_6VectorISA_Lm0ENS1_15CrashOnOverflowEEEEPFvvEPFvRKSA_EPFbSX_SX_EE (libwebkit2gtk-4.0.so.37)
                #22 0x00007f68b06bbcda buildMediaEnginesVector (libwebkit2gtk-4.0.so.37)
                #23 0x00007f68b06bbcfa installedMediaEngines (libwebkit2gtk-4.0.so.37)
                #24 0x00007f68b06bd9f1 _ZN7WebCore11MediaPlayer11isAvailableEv (libwebkit2gtk-4.0.so.37)
                #25 0x00007f68b1213d7d videoConstructor (libwebkit2gtk-4.0.so.37)
                #26 0x00007f68b1214054 _ZN7WebCore18HTMLElementFactory13createElementERKNS_13QualifiedNameERNS_8DocumentEPNS_15HTMLFormElementEb (libwebkit2gtk-4.0.so.37)
                #27 0x00007f68b0151951 _ZN7WebCore12HTMLDocument13createElementERKN3WTF12AtomicStringERi (libwebkit2gtk-4.0.so.37)
                #28 0x00007f68b0ec5182 _ZN7WebCore40jsDocumentPrototypeFunctionCreateElementEPN3JSC9ExecStateE (libwebkit2gtk-4.0.so.37)
                #29 0x00007f6843fff0a8 n/a (n/a)
Comment 3 Michael Catanzaro 2015-03-24 08:22:24 PDT

*** This bug has been marked as a duplicate of bug 142978 ***