Wireshark-bugs: [Wireshark-bugs] [Bug 8604] New: Single ping crashes i686 Wireshark

Date: Tue, 23 Apr 2013 04:15:24 +0000
Bug ID 8604
Summary Single ping crashes i686 Wireshark
Classification Unclassified
Product Wireshark
Version 1.9.x (Experimental)
Hardware x86
OS Debian
Status UNCONFIRMED
Severity Major
Priority Low
Component Wireshark
Assignee [email protected]
Reporter [email protected]

Created attachment 10637 [details]
capture file triggering the problem

Build Information:
wireshark 1.9.2 (SVN Rev 48626 from /trunk)

Copyright 1998-2013 Gerald Combs <[email protected]> and contributors.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Compiled (32-bit) with GTK+ 3.4.2, with Cairo 1.12.2, with Pango 1.30.0, with
GLib 2.32.4, with libpcap, with libz 1.2.7, with POSIX capabilities (Linux),
without libnl, with SMI 0.4.8, with c-ares 1.9.1, with Lua 5.1, without Python,
with GnuTLS 2.12.20, with Gcrypt 1.5.0, with MIT Kerberos, with GeoIP, with
PortAudio V19-devel (built Dec  7 2011 23:44:47), with AirPcap.

Running on Linux 3.7-trunk-amd64, with locale en_US.UTF-8, with libpcap version
1.3.0, with libz 1.2.7, GnuTLS 2.12.20, Gcrypt 1.5.0, without AirPcap.

Built using gcc 4.7.2.

--
Wireshark (i386) 1.9.2-1 packaged in Debian dies at the first packet of ping
8.8.8.8 with the following message:
Gtk:ERROR:/tmp/buildd/gtk+3.0-3.8.0/./gtk/gtkwidget.c:14133:gtk_widget_unregister_window:
assertion failed: (user_data == widget)

Amd64 version seems to be OK.

First few frames from the stack trace:
#0  0xf3d9a667 in *__GI_raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
64    ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt full
#0  0xf3d9a667 in *__GI_raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
        resultvar = <optimized out>
        pid = -202661900
        selftid = 23103
#1  0xf3d9da52 in *__GI_abort () at abort.c:92
        act = {__sigaction_handler = {sa_handler = 0xffd5f584, 
            sa_sigaction = 0xffd5f584}, sa_mask = {__val = {4149868130,
4292212084, 
              4092713544, 4292212072, 4149951076, 0, 4056399264, 5, 0, 1,
4093772504, 
              4091433965, 16, 1, 4093747188, 153, 0, 4093018731, 0, 4292212144, 
              4292212072, 4292212084, 4167518400, 4093772504, 0, 4093019104, 
              4170318728, 4092758512, 4092310432, 4093747188, 4093747188,
153}}, 
          sa_flags = -201220108, sa_restorer = 0xf3f85d2e}
        sigs = {__val = {32, 0 <repeats 31 times>}}
#2  0xf3f862da in g_assertion_message () from
/lib/i386-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#3  0xf3f8691f in g_assertion_message_expr () from
/lib/i386-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#4  0xf45acd0d in gtk_widget_unregister_window ()
   from /usr/lib/i386-linux-gnu/libgtk-3.so.0
No symbol table info available.
#5  0xf45ace1c in ?? () from /usr/lib/i386-linux-gnu/libgtk-3.so.0
No symbol table info available.
#6  0xf76be463 in bytes_view_unrealize (widget=0xf8737380) at bytes_view.c:259
        bv = <optimized out>
...

Based on frame 6 I suspect GTK3 does not like the trick employed in
bytes_view_unrealize():

static void
bytes_view_unrealize(GtkWidget *widget)
{
        BytesView *bv = BYTES_VIEW(widget);

        if (bv->context) {
                g_object_unref(bv->context);
                bv->context = NULL;
        }
        /* if there are still events in the queue, this'll avoid segfault */
        gdk_window_set_user_data(gtk_widget_get_window(widget), NULL);

        if (parent_class->unrealize)
                (*GTK_WIDGET_CLASS(parent_class)->unrealize)(widget);
}


You are receiving this mail because:
  • You are watching all bug changes.