<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>129738</bug_id>
          
          <creation_ts>2014-03-05 05:31:29 -0800</creation_ts>
          <short_desc>[GTK] MiniBrowser crashes when opening several urls passed as command line options</short_desc>
          <delta_ts>2014-03-06 04:00:59 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>svillar</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>987223</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2014-03-05 05:31:29 -0800</bug_when>
    <thetext>It happens when closing the third window, see:

Program received signal SIGSEGV, Segmentation fault.
g_type_check_instance (type_instance=type_instance@entry=0x6a6d70) at gtype.c:4076
4076		  TypeNode *node = lookup_type_node_I (type_instance-&gt;g_class-&gt;g_type);
(gdb) bt
#0  g_type_check_instance (type_instance=type_instance@entry=0x6a6d70) at gtype.c:4076
#1  0x00007ffff219fab4 in g_signal_handlers_disconnect_matched (instance=0x6a6d70, mask=(G_SIGNAL_MATCH_FUNC | G_SIGNAL_MATCH_DATA), signal_id=0, detail=0, closure=0x0, 
    func=0x7ffff5c75ee0 &lt;allowModalDialogsChanged(_WebKitSettings*, _GParamSpec*, _WebKitWebView*)&gt;, data=0x935530) at gsignal.c:2865
#2  0x00007ffff5c75e30 in webkitWebViewDisconnectSettingsSignalHandlers(_WebKitWebView*) () from WebKit/WebKitBuild/Release/.libs/libwebkit2gtk-3.0.so.25
#3  0x00007ffff5c78870 in webkitWebViewDispose(_GObject*) () from WebKit/WebKitBuild/Release/.libs/libwebkit2gtk-3.0.so.25
#4  0x00007ffff218d800 in g_object_run_dispose (object=0x935530) at gobject.c:1071
#5  0x00007ffff3c7090c in gtk_overlay_forall (overlay=0x8e5250, include_internals=&lt;optimized out&gt;, callback=0x7ffff3d77000 &lt;gtk_widget_destroy&gt;, callback_data=0x0) at gtkoverlay.c:552
#6  0x00007ffff3b8b991 in gtk_container_destroy (widget=0x8e5250) at gtkcontainer.c:1395
#7  0x00007ffff2186e82 in g_closure_invoke (closure=0x628300, return_value=0x0, n_param_values=1, param_values=0x7fffffffca80, invocation_hint=0x7fffffffca20) at gclosure.c:768
#8  0x00007ffff21995f4 in signal_emit_unlocked_R (node=node@entry=0x628370, detail=detail@entry=0, instance=instance@entry=0x8e5250, emission_return=emission_return@entry=0x0, 
    instance_and_params=instance_and_params@entry=0x7fffffffca80) at gsignal.c:3667
#9  0x00007ffff21a1222 in g_signal_emit_valist (instance=&lt;optimized out&gt;, signal_id=&lt;optimized out&gt;, detail=&lt;optimized out&gt;, var_args=var_args@entry=0x7fffffffcbf8) at gsignal.c:3307
#10 0x00007ffff21a1462 in g_signal_emit (instance=instance@entry=0x8e5250, signal_id=&lt;optimized out&gt;, detail=detail@entry=0) at gsignal.c:3363
#11 0x00007ffff3d84778 in gtk_widget_dispose (object=0x8e5250) at gtkwidget.c:11329
#12 0x00007ffff218d800 in g_object_run_dispose (object=0x8e5250) at gobject.c:1071
#13 0x00007ffff3b41ea2 in gtk_box_forall (container=&lt;optimized out&gt;, include_internals=&lt;optimized out&gt;, callback=0x7ffff3d77000 &lt;gtk_widget_destroy&gt;, callback_data=0x0) at gtkbox.c:2111
#14 0x00007ffff3b8b991 in gtk_container_destroy (widget=0x927690) at gtkcontainer.c:1395
#15 0x00007ffff2186e82 in g_closure_invoke (closure=0x628300, return_value=0x0, n_param_values=1, param_values=0x7fffffffcef0, invocation_hint=0x7fffffffce90) at gclosure.c:768
#16 0x00007ffff21995f4 in signal_emit_unlocked_R (node=node@entry=0x628370, detail=detail@entry=0, instance=instance@entry=0x927690, emission_return=emission_return@entry=0x0, 
    instance_and_params=instance_and_params@entry=0x7fffffffcef0) at gsignal.c:3667
#17 0x00007ffff21a1222 in g_signal_emit_valist (instance=&lt;optimized out&gt;, signal_id=&lt;optimized out&gt;, detail=&lt;optimized out&gt;, var_args=var_args@entry=0x7fffffffd068) at gsignal.c:3307
#18 0x00007ffff21a1462 in g_signal_emit (instance=instance@entry=0x927690, signal_id=&lt;optimized out&gt;, detail=detail@entry=0) at gsignal.c:3363
#19 0x00007ffff3d84778 in gtk_widget_dispose (object=0x927690) at gtkwidget.c:11329
#20 0x00007ffff218d800 in g_object_run_dispose (object=0x927690) at gobject.c:1071
#21 0x00007ffff3d8f59e in gtk_window_forall (container=0x8964f0, include_internals=0, callback=0x7ffff3d77000 &lt;gtk_widget_destroy&gt;, callback_data=0x0) at gtkwindow.c:8069
#22 0x00007ffff3b8b991 in gtk_container_destroy (widget=0x8964f0) at gtkcontainer.c:1395
#23 0x00007ffff2186f08 in g_closure_invoke (closure=0x628300, return_value=0x0, n_param_values=1, param_values=0x7fffffffd360, invocation_hint=0x7fffffffd300) at gclosure.c:768
#24 0x00007ffff21995f4 in signal_emit_unlocked_R (node=node@entry=0x628370, detail=detail@entry=0, instance=instance@entry=0x8964f0, emission_return=emission_return@entry=0x0, 
    instance_and_params=instance_and_params@entry=0x7fffffffd360) at gsignal.c:3667
#25 0x00007ffff21a1222 in g_signal_emit_valist (instance=&lt;optimized out&gt;, signal_id=&lt;optimized out&gt;, detail=&lt;optimized out&gt;, var_args=var_args@entry=0x7fffffffd4d8) at gsignal.c:3307
#26 0x00007ffff21a1462 in g_signal_emit (instance=instance@entry=0x8964f0, signal_id=&lt;optimized out&gt;, detail=detail@entry=0) at gsignal.c:3363
#27 0x00007ffff3d84778 in gtk_widget_dispose (object=0x8964f0) at gtkwidget.c:11329
#28 0x00007ffff218d800 in g_object_run_dispose (object=0x8964f0) at gobject.c:1071
#29 0x00007ffff3d7706e in gtk_widget_destroy (widget=&lt;optimized out&gt;) at gtkwidget.c:4307
#30 0x00007ffff3c33f93 in gtk_main_do_event (event=0x9940b0) at gtkmain.c:1629
#31 0x00007ffff3812012 in gdk_event_source_dispatch (source=&lt;optimized out&gt;, callback=&lt;optimized out&gt;, user_data=&lt;optimized out&gt;) at gdkeventsource.c:364
#32 0x00007ffff1e94834 in g_main_dispatch (context=0x6590c0) at gmain.c:3066
#33 g_main_context_dispatch (context=context@entry=0x6590c0) at gmain.c:3641
#34 0x00007ffff1e94a78 in g_main_context_iterate (context=0x6590c0, block=block@entry=1, dispatch=dispatch@entry=1, self=&lt;optimized out&gt;) at gmain.c:3712
#35 0x00007ffff1e94d3a in g_main_loop_run (loop=0xa0fea0) at gmain.c:3906
#36 0x00007ffff3c332e5 in gtk_main () at gtkmain.c:1190
#37 0x0000000000408449 in main ()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987224</commentid>
    <comment_count>1</comment_count>
      <attachid>225875</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2014-03-05 05:35:13 -0800</bug_when>
    <thetext>Created attachment 225875
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987248</commentid>
    <comment_count>2</comment_count>
      <attachid>225875</attachid>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2014-03-05 07:39:31 -0800</bug_when>
    <thetext>Comment on attachment 225875
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=225875&amp;action=review

r=me with comments

&gt; Tools/MiniBrowser/gtk/main.c:286
&gt; +        g_object_unref(webkitSettings);

I&apos;d prefer using g_clear_object(&amp;webkitSettings);

We could do the same above when we do:

    if (!addSettingsGroupToContext(context, webkitSettings)) {
        g_object_unref(webkitSettings);
        webkitSettings = 0;
    }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>987644</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2014-03-06 04:00:59 -0800</bug_when>
    <thetext>Committed r165181: &lt;http://trac.webkit.org/changeset/165181&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>225875</attachid>
            <date>2014-03-05 05:35:13 -0800</date>
            <delta_ts>2014-03-05 07:39:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>wk2-mb-crash.diff</filename>
            <type>text/plain</type>
            <size>1792</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAwZmI2
MGVjLi5kOWI3MzhhZCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE0LTAzLTA1ICBDYXJsb3MgR2FyY2lhIENhbXBv
cyAgPGNnYXJjaWFAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBNaW5pQnJvd3NlciBjcmFz
aGVzIHdoZW4gb3BlbmluZyBzZXZlcmFsIHVybHMgcGFzc2VkIGFzIGNvbW1hbmQgbGluZSBvcHRp
b25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjk3
MzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUg
cHJvYmxlbSBpcyB0aGF0IHdlIGFyZSBjYWxsaW5nIGdfb2JqZWN0X3VucmVmKCkgZm9yIHRoZQor
ICAgICAgICBXZWJLaXRXZWJTZXR0aW5ncyBldmVyeXRpbWUgd2Ugc2V0IGl0IHRvIGEgV2ViS2l0
V2ViVmlldywgYnV0IHRoZQorICAgICAgICB2aWV3IG9ubHkgaW5jcmVhc2VzIHRoZSByZWZlcmVu
Y2UgY291bnRlciB3aGVuIHRoZSBzZXR0aW5ncyBpcyBub3QKKyAgICAgICAgdGhlIHNhbWUgaXQg
Y3VycmVudGx5IGhhcy4gV2Ugc2hvdWxkIHJlbGVhc2Ugb3VyIHJlZmVyZW5jZSBvbmNlLgorCisg
ICAgICAgICogTWluaUJyb3dzZXIvZ3RrL21haW4uYzoKKyAgICAgICAgKGNyZWF0ZUJyb3dzZXJX
aW5kb3cpOgorICAgICAgICAobWFpbik6CisKIDIwMTQtMDItMTAgIENhcmxvcyBHYXJjaWEgQ2Ft
cG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHTElCXSBBZGQgR1VuaXF1ZU91
dFB0ciBhbmQgdXNlIGl0IGluc3RlYWQgb2YgR093blB0cgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWlu
aUJyb3dzZXIvZ3RrL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2d0ay9tYWluLmMKaW5kZXgg
ZjY5YTRmNi4uNWQ1NWQ3OCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvZ3RrL21haW4u
YworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9ndGsvbWFpbi5jCkBAIC02MCwxMCArNjAsOCBAQCBz
dGF0aWMgdm9pZCBjcmVhdGVCcm93c2VyV2luZG93KGNvbnN0IGdjaGFyICp1cmksIFdlYktpdFNl
dHRpbmdzICp3ZWJraXRTZXR0aW5ncwogICAgIEd0a1dpZGdldCAqbWFpbldpbmRvdyA9IGJyb3dz
ZXJfd2luZG93X25ldyhXRUJLSVRfV0VCX1ZJRVcod2ViVmlldyksIE5VTEwpOwogICAgIGdjaGFy
ICp1cmwgPSBhcmd1bWVudFRvVVJMKHVyaSk7CiAKLSAgICBpZiAod2Via2l0U2V0dGluZ3MpIHsK
KyAgICBpZiAod2Via2l0U2V0dGluZ3MpCiAgICAgICAgIHdlYmtpdF93ZWJfdmlld19zZXRfc2V0
dGluZ3MoV0VCS0lUX1dFQl9WSUVXKHdlYlZpZXcpLCB3ZWJraXRTZXR0aW5ncyk7Ci0gICAgICAg
IGdfb2JqZWN0X3VucmVmKHdlYmtpdFNldHRpbmdzKTsKLSAgICB9CiAKICAgICBicm93c2VyX3dp
bmRvd19sb2FkX3VyaShCUk9XU0VSX1dJTkRPVyhtYWluV2luZG93KSwgdXJsKTsKICAgICBnX2Zy
ZWUodXJsKTsKQEAgLTI4NCw2ICsyODIsOSBAQCBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJn
dltdKQogICAgIH0gZWxzZQogICAgICAgICBjcmVhdGVCcm93c2VyV2luZG93KCJodHRwOi8vd3d3
LndlYmtpdGd0ay5vcmcvIiwgd2Via2l0U2V0dGluZ3MpOwogCisgICAgaWYgKHdlYmtpdFNldHRp
bmdzKQorICAgICAgICBnX29iamVjdF91bnJlZih3ZWJraXRTZXR0aW5ncyk7CisKICAgICBndGtf
bWFpbigpOwogCiAgICAgcmV0dXJuIDA7Cg==
</data>
<flag name="review"
          id="250057"
          type_id="1"
          status="+"
          setter="svillar"
    />
          </attachment>
      

    </bug>

</bugzilla>