Bug#795221: gnuplot5-qt: crash in g_slist_copy_deep / assertion failures

Vincent Lefevre vincent at vinc17.net
Tue Aug 11 21:40:10 UTC 2015


Package: gnuplot5-qt
Version: 5.0.1+dfsg1-2
Severity: important

I got a crash with GNUTERM=wxt, not always reproducible:

Core was generated by `/usr/bin/gnuplot -persist'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  g_slist_copy_deep (list=0xa0538bce00000000, func=func at entry=0x0, 
    user_data=user_data at entry=0x0)
    at /tmp/buildd/glib2.0-2.44.1/./glib/gslist.c:610
610     /tmp/buildd/glib2.0-2.44.1/./glib/gslist.c: No such file or directory.

The backtrace:

Thread 1 (Thread 0x7f4e89a74a00 (LWP 11798)):
#0  0x00007f4e87860970 in g_slist_copy_deep (list=0x-5fac743200000000 = {...}, func=func at entry=0x0, user_data=user_data at entry=0x0) at /tmp/buildd/glib2.0-2.44.1/./glib/gslist.c:610
        last = <optimized out>
        new_list = 0x7f4e8a961140 = {0x7f4e8a977200}
#1  0x00007f4e87860999 in g_slist_copy (list=<optimized out>) at /tmp/buildd/glib2.0-2.44.1/./glib/gslist.c:565
#2  0x00007f4e87b1cb21 in g_object_base_class_init (class=0x7f4e8a9223e0) at /tmp/buildd/glib2.0-2.44.1/./gobject/gobject.c:415
        pclass = <optimized out>
#3  0x00007f4e87b37034 in g_type_class_ref (pclass=0x7f4e8a922b20, node=0x7f4e8a948af0) at /tmp/buildd/glib2.0-2.44.1/./gobject/gtype.c:2169
        class_init_base = <optimized out>
        slist = 0x7f4e8a961190 = {0x7f4e87b1cb00 <g_object_base_class_init>}
        init_slist = 0x7f4e8a961190 = {0x7f4e87b1cb00 <g_object_base_class_init>}
        i = <optimized out>
        class = 0x7f4e8a9223e0
        entries = <optimized out>
        entry = <optimized out>
        bnode = <optimized out>
        ptype = <optimized out>
        holds_ref = <optimized out>
        pclass = <optimized out>
#4  0x00007f4e87b37034 in g_type_class_ref (type=type at entry=139975309167344) at /tmp/buildd/glib2.0-2.44.1/./gobject/gtype.c:2951
        ptype = <optimized out>
        holds_ref = <optimized out>
        pclass = <optimized out>
#5  0x00007f4e87b1f26a in g_object_newv (object_type=object_type at entry=139975309167344, n_parameters=n_parameters at entry=0, parameters=parameters at entry=0x0) at /tmp/buildd/glib2.0-2.44.1/./gobject/gobject.c:1868
        class = 0x0
        unref_class = 0x0
        object = <optimized out>
        __FUNCTION__ = "g_object_newv"
#6  0x00007f4e87b1f9f4 in g_object_new (object_type=139975309167344, first_property_name=first_property_name at entry=0x0) at /tmp/buildd/glib2.0-2.44.1/./gobject/gobject.c:1614
        var_args = {{gp_offset = 48, fp_offset = 48, overflow_arg_area = 0x4076800000000000, reg_save_area = 0x4028000000000000}}
        __FUNCTION__ = "g_object_new"
#7  0x00007f4e83ac51a0 in _gtk_tooltip_handle_event (event=event at entry=0x7f4e8a9676d0) at /tmp/buildd/gtk+2.0-2.24.28/gtk/gtktooltip.c:1619
        x = 360
        y = 12
        return_value = 0
        has_tooltip_widget = 0x7f4e8a944610 [GtkToolbar]
        display = 0x7f4e8a936020 [GdkDisplayX11]
        current_tooltip = 0x0
#8  0x00007f4e839ed548 in IA__gtk_main_do_event (event=0x7f4e8a9676d0) at /tmp/buildd/gtk+2.0-2.24.28/gtk/gtkmain.c:1738
        event_widget = <optimized out>
        grab_widget = 0x7f4e8a966720 [GtkWindow]
        window_group = <optimized out>
        rewritten_event = <optimized out>
        tmp_list = <optimized out>
        __FUNCTION__ = "IA__gtk_main_do_event"
#9  0x00007f4e83660bbc in gdk_event_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at /tmp/buildd/gtk+2.0-2.24.28/gdk/x11/gdkevents-x11.c:2425
        display = <optimized out>
        event = 0x7f4e8a9676d0
#10 0x00007f4e87842c3d in g_main_context_dispatch (context=0x7f4e8a945420) at /tmp/buildd/glib2.0-2.44.1/./glib/gmain.c:3122
        dispatch = 0x7f4e83660b70 <gdk_event_dispatch>
        prev_source = 0x0
        was_in_call = 0
        user_data = 0x0
        callback = 0x0
        cb_funcs = <optimized out>
        cb_data = <optimized out>
        need_destroy = <optimized out>
        source = 0x7f4e8a945330
        current = 0x7f4e8a977250
        i = 0
#11 0x00007f4e87842c3d in g_main_context_dispatch (context=context at entry=0x7f4e8a945420) at /tmp/buildd/glib2.0-2.44.1/./glib/gmain.c:3737
#12 0x00007f4e87842f20 in g_main_context_iterate (context=0x7f4e8a945420, block=block at entry=1, dispatch=dispatch at entry=1, self=<optimized out>) at /tmp/buildd/glib2.0-2.44.1/./glib/gmain.c:3808
        max_priority = 2147483647
        timeout = -1
        some_ready = 1
        nfds = <optimized out>
        allocated_nfds = 2
        fds = 0x7f4e6c000900
#13 0x00007f4e87843242 in g_main_loop_run (loop=0x7f4e8a9f3500) at /tmp/buildd/glib2.0-2.44.1/./glib/gmain.c:4002
        __FUNCTION__ = "g_main_loop_run"
#14 0x00007f4e839ec5d7 in IA__gtk_main () at /tmp/buildd/gtk+2.0-2.24.28/gtk/gtkmain.c:1268
        tmp_list = 0x0
        functions = 0x0
        init = <optimized out>
        loop = 0x7f4e8a9f3500
#15 0x00007f4e88913815 in wxGUIEventLoop::DoRun() (this=0x7f4e8a97ed60) at ../src/gtk/evtloop.cpp:65
        loopLevel = 0
#16 0x00007f4e8826c900 in wxEventLoopBase::Run() (this=0x7f4e8a97ed60) at ../src/common/evtloopcmn.cpp:78
        __FUNCTION__ = "Run"
        activate = {m_evtLoopOld = 0x0}
#17 0x00007f4e88228086 in wxAppConsoleBase::MainLoop() (this=0x7f4e8a910c70) at ../src/common/appbase.cpp:334
        mainLoop = {<wxEventLoopBasePtr> = {m_ptr = 0x7f4e8a97ed60}, m_pp = 0x7f4e8a910d90, m_pOld = 0x0}
#18 0x00007f4e89993b94 in  ()
#19 0x00007f4e89938a5a in  ()
#20 0x00007f4e8989b0bd in  ()
#21 0x00007f4e8576fb45 in __libc_start_main (main=0x7f4e8989aa70, argc=2, argv=0x7ffd7e95a218, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd7e95a208) at libc-start.c:287
        result = <optimized out>
        unwind_buf = {cancel_jmp_buf = {{jmp_buf = {0, -777055417766071101, 139975291683466, 140726727189008, 0, 0, 778459857526371523, 840575381424092355}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x7ffd7e95a230, 0x7f4e898611a8}, data = {prev = 0x0, cleanup = 0x0, canceltype = 2123735600}}}
        not_first_call = <optimized out>
#22 0x00007f4e8989c2b3 in  ()

With the following script:

gnuplot -persist <<EOF
plot '-' using 1:2 t '' with line
0 0
10 10
e
EOF

I sometimes get assertion failures:

$ ./plot

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

(gnuplot:13786): Gdk-CRITICAL **: IA__gdk_x11_atom_to_xatom_for_display: assertion 'ATOM_TO_INDEX (atom) < virtual_atom_array->len' failed

I'm now wondering wheter bugs 794799 and 794821 are also due to gnuplot.

-- System Information:
Debian Release: stretch/sid
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/8 CPU cores)
Locale: LANG=POSIX, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages gnuplot5-qt depends on:
ii  gnuplot5-data        5.0.1+dfsg1-2
ii  libc6                2.19-19
ii  libcairo2            1.14.2-2
ii  libedit2             3.1-20150325-1
ii  libgcc1              1:5.2.1-15
ii  libgd3               2.1.1-4
ii  libglib2.0-0         2.44.1-1.1
ii  liblua5.1-0          5.1.5-7.1
ii  libpango-1.0-0       1.36.8-3
ii  libpangocairo-1.0-0  1.36.8-3
ii  libqt5core5a         5.4.2+dfsg-8
ii  libqt5gui5           5.4.2+dfsg-8
ii  libqt5network5       5.4.2+dfsg-8
ii  libqt5printsupport5  5.4.2+dfsg-8
ii  libqt5svg5           5.4.2-2+b1
ii  libqt5widgets5       5.4.2+dfsg-8
ii  libstdc++6           5.2.1-15
ii  libwxbase3.0-0       3.0.2+dfsg-1
ii  libwxgtk3.0-0        3.0.2+dfsg-1
ii  libx11-6             2:1.6.3-1

gnuplot5-qt recommends no packages.

Versions of packages gnuplot5-qt suggests:
ii  gnuplot5-doc  5.0.1+dfsg1-2

-- no debconf information



More information about the debian-science-maintainers mailing list