#543 Segmentation fault.

closed-works-for-me
nobody
None
9
2012-11-01
2012-05-23
Dmitry Kostochko
No

When I run pcmanfm --no-desktop i get segfault.

ubuntu 10.04
kernel 3.3.6
libfm-0.1.17
pcmanfm-0.9.10

Starting program: /usr/bin/pcmanfm
[Thread debugging using libthread_db enabled]
[New Thread 0xb4804b70 (LWP 28317)]
[New Thread 0xb3effb70 (LWP 28318)]

(pcmanfm:28314): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

(pcmanfm:28314): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(pcmanfm:28314): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

(pcmanfm:28314): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

(pcmanfm:28314): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

(pcmanfm:28314): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

Program received signal SIGSEGV, Segmentation fault.
0xb76fc0c3 in g_type_check_instance () from /usr/lib/libgobject-2.0.so.0
(gdb) bt\

#0 0xb76fc0c3 in g_type_check_instance () from /usr/lib/libgobject-2.0.so.0
#1 0xb76fa635 in g_signal_connect_data () from /usr/lib/libgobject-2.0.so.0
#2 0x080577ff in ?? ()
#3 0xb7bcee1f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#4 0xb76e3252 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#5 0xb76f7d90 in ?? () from /usr/lib/libgobject-2.0.so.0
#6 0xb76f8db4 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
#7 0xb76f9256 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#8 0xb7bebab4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#9 0xb7bf1cc2 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#10 0xb7bef140 in gtk_notebook_insert_page_menu () from /usr/lib/libgtk-x11-2.0.so.0
#11 0xb7bef753 in gtk_notebook_append_page () from /usr/lib/libgtk-x11-2.0.so.0
#12 0x0805524d in fm_main_win_add_tab ()
#13 0x08055b9d in fm_main_win_new ()
#14 0x08055bc2 in fm_main_win_add_win ()
#15 0x08053ee5 in ?? ()
#16 0x08054148 in main ()

Discussion

  • How you installed libfm and pcmanfm? If you used ubuntu packages then install also packages libfm1-dbg and pcmanfm-dbg, please. That should give a bit more info in output of backtrace. Quoted part is insufficient to find source of problem unfortunately.

     
  • i downloaded source libfm and pcmanfm from sourceforge and built them.

    ./configure --prefix=/usr --sysconfdir=/etc --enable-debug
    ./make
    ./sudo checkinstall

     
  • Does it happen only with --no-desktop option or without it too?

     
  • $ gdb pcmanfm
    GNU gdb (GDB) 7.1-ubuntu
    This GDB was configured as "i486-linux-gnu".
    Reading symbols from /usr/bin/pcmanfm...(no debugging symbols found)...done.
    (gdb) run
    Starting program: /usr/bin/pcmanfm
    [Thread debugging using libthread_db enabled]
    [New Thread 0xb4788b70 (LWP 30957)]
    [New Thread 0xb3dffb70 (LWP 30958)]

    (pcmanfm:30954): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

    (pcmanfm:30954): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

    (pcmanfm:30954): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

    (pcmanfm:30954): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

    (pcmanfm:30954): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

    (pcmanfm:30954): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed

    Program received signal SIGSEGV, Segmentation fault.
    0xb76fc0c3 in g_type_check_instance () from /usr/lib/libgobject-2.0.so.0
    (gdb) bt
    #0 0xb76fc0c3 in g_type_check_instance () from /usr/lib/libgobject-2.0.so.0
    #1 0xb76fa635 in g_signal_connect_data () from /usr/lib/libgobject-2.0.so.0
    #2 0x080577ff in ?? ()
    #3 0xb7bcee1f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #4 0xb76e3252 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
    #5 0xb76f7d90 in ?? () from /usr/lib/libgobject-2.0.so.0
    #6 0xb76f8db4 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
    #7 0xb76f9256 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
    #8 0xb7bebab4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #9 0xb7bf1cc2 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #10 0xb7bef140 in gtk_notebook_insert_page_menu () from /usr/lib/libgtk-x11-2.0.so.0
    #11 0xb7bef753 in gtk_notebook_append_page () from /usr/lib/libgtk-x11-2.0.so.0
    #12 0x0805524d in fm_main_win_add_tab ()
    #13 0x08055b9d in fm_main_win_new ()
    #14 0x08055bc2 in fm_main_win_add_win ()
    #15 0x08053ee5 in ?? ()
    #16 0x08054148 in main ()
    (gdb)

     
  • From your GDB output it's clearly shown there is no debug info in your pcmanfm and/or libfm. Without such data it's impossible to find source of problem because backtrace gives false assumptions unfortunately.
    Please, try to reinstall your pcmanfm and libfm assuring there are debug symbols in installed files. After that done repeat the problem, please, and give us GDB backtrace output. That will help a lot. Thank you.

     
  • Sorry, checkinstall cutoff debug info.

    $ gdb pcmanfm
    GNU gdb (GDB) 7.1-ubuntu
    This GDB was configured as "i486-linux-gnu".
    Reading symbols from /usr/bin/pcmanfm...done.
    (gdb) run
    Starting program: /usr/bin/pcmanfm
    [Thread debugging using libthread_db enabled]
    [New Thread 0xb4788b70 (LWP 9997)]
    [New Thread 0xb3dffb70 (LWP 9998)]

    (pcmanfm:9994): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

    GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    aborting...

    Program received signal SIGABRT, Aborted.
    0xb7fe2424 in __kernel_vsyscall ()
    (gdb) bt
    #0 0xb7fe2424 in __kernel_vsyscall ()
    #1 0xb74aa651 in raise () from /lib/tls/i686/cmov/libc.so.6
    #2 0xb74ada82 in abort () from /lib/tls/i686/cmov/libc.so.6
    #3 0xb7639026 in g_logv () from /lib/libglib-2.0.so.0
    #4 0xb7639056 in g_log () from /lib/libglib-2.0.so.0
    #5 0xb76392bb in g_return_if_fail_warning () from /lib/libglib-2.0.so.0
    #6 0xb76fa756 in g_signal_connect_data () from /usr/lib/libgobject-2.0.so.0
    #7 0x0805777b in on_notebook_switch_page (nb=0x82af020, new_page=0x82ce210, num=0, win=0x80d4830) at main-win.c:1170
    #8 0xb7bcee1f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #9 0xb76e3252 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
    #10 0xb76f7d90 in ?? () from /usr/lib/libgobject-2.0.so.0
    #11 0xb76f8db4 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
    #12 0xb76f9256 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
    #13 0xb7bebab4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #14 0xb7bf1cc2 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #15 0xb7bef140 in gtk_notebook_insert_page_menu () from /usr/lib/libgtk-x11-2.0.so.0
    #16 0xb7bef753 in gtk_notebook_append_page () from /usr/lib/libgtk-x11-2.0.so.0
    #17 0x0805524d in fm_main_win_add_tab (win=0x80d4830, path=0x80d3938) at main-win.c:870
    #18 0x08055b9d in fm_main_win_new (path=0x80d3938) at main-win.c:527
    #19 0x08055bc2 in fm_main_win_add_win (win=0x0, path=0x80d3938) at main-win.c:879
    #20 0x08053ee5 in pcmanfm_run () at pcmanfm.c:387
    #21 0x08054148 in main (argc=1, argv=0xbffff314) at pcmanfm.c:196

     
  • And second attempt with --no-desktop option

    $ gdb --args pcmanfm --no-desktop
    GNU gdb (GDB) 7.1-ubuntu
    This GDB was configured as "i486-linux-gnu".
    Reading symbols from /usr/bin/pcmanfm...done.
    (gdb) run
    Starting program: /usr/bin/pcmanfm --no-desktop
    [Thread debugging using libthread_db enabled]
    [New Thread 0xb4788b70 (LWP 10013)]
    [New Thread 0xb3dffb70 (LWP 10014)]

    (pcmanfm:10010): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)'

    GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed
    aborting...

    Program received signal SIGABRT, Aborted.
    0xb7fe2424 in __kernel_vsyscall ()
    (gdb) bt
    #0 0xb7fe2424 in __kernel_vsyscall ()
    #1 0xb74aa651 in raise () from /lib/tls/i686/cmov/libc.so.6
    #2 0xb74ada82 in abort () from /lib/tls/i686/cmov/libc.so.6
    #3 0xb7639026 in g_logv () from /lib/libglib-2.0.so.0
    #4 0xb7639056 in g_log () from /lib/libglib-2.0.so.0
    #5 0xb76392bb in g_return_if_fail_warning () from /lib/libglib-2.0.so.0
    #6 0xb76fa756 in g_signal_connect_data () from /usr/lib/libgobject-2.0.so.0
    #7 0x0805777b in on_notebook_switch_page (nb=0x82af020, new_page=0x82ce610, num=0, win=0x80d4830) at main-win.c:1170
    #8 0xb7bcee1f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #9 0xb76e3252 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
    #10 0xb76f7d90 in ?? () from /usr/lib/libgobject-2.0.so.0
    #11 0xb76f8db4 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
    #12 0xb76f9256 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
    #13 0xb7bebab4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #14 0xb7bf1cc2 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
    #15 0xb7bef140 in gtk_notebook_insert_page_menu () from /usr/lib/libgtk-x11-2.0.so.0
    #16 0xb7bef753 in gtk_notebook_append_page () from /usr/lib/libgtk-x11-2.0.so.0
    #17 0x0805524d in fm_main_win_add_tab (win=0x80d4830, path=0x80d3060) at main-win.c:870
    #18 0x08055b9d in fm_main_win_new (path=0x80d3060) at main-win.c:527
    #19 0x08055bc2 in fm_main_win_add_win (win=0x0, path=0x80d3060) at main-win.c:879
    #20 0x08053ee5 in pcmanfm_run () at pcmanfm.c:387
    #21 0x08054148 in main (argc=1, argv=0xbffff304) at pcmanfm.c:196
    (gdb)

     
    • priority: 5 --> 9
     
    • milestone: --> 557433
     
  • It's odd but I neither can reproduce it nor find a reason why it would crash there. If that pointer which gave you a "instance of invalid non-instantiatable type" message was invalid from the start it would give you more than one such message. And it seems your pcmanfm is compiled against libfm-0.1.17 still and I'm not sure if recent libfm could be compiled for ubuntu 10.04 fine, that ubuntu version is a bit old already. Could you help me to reproduce the bug?

     
  • PCMan
    PCMan
    2012-06-15

    Can anyone reproduce the bug?
    If nobody can, I'm going to close it.
    I test this on two machines (32 and 64 bit) for many times with the latest source code in git and I'm not able to reproduce this at all. Please test the latest source code in git to see if it still exists.
    Thanks!

     
  • PCMan
    PCMan
    2012-06-17

    • milestone: 557433 --> 2334066
    • status: open --> pending-works-for-me
     
  • PCMan
    PCMan
    2012-06-17

    Though I can never reproduce this, I still did some more code refactor and hopefully this bug can also be eliminated.
    I set the status of this bug to pending.
    Please confirm if it still exists. If the bug is still there, please reopen the bug.
    Otherwise it will be closed by the sf.net bug tracker system automatically after timeout.
    Thanks.

     
    • status: pending-works-for-me --> closed-works-for-me
     
    • milestone: 2334066 -->