Happens with current trunk. Right click on any file and open the "open with" dialog. Press any letter key of your keyboard, such as "g". The application crashes. Backtrace: (xarchiver:14792): Gtk-CRITICAL **: gtk_list_store_get_value: assertion `VALID_ITER (iter, list_store)' failed (xarchiver:14792): GLib-GObject-WARNING **: /build/buildd/glib2.0-2.16.6/gobject/gtype.c:3362: type id `0' is invalid (xarchiver:14792): GLib-GObject-WARNING **: can't peek value table for type `<invalid>' which is not currently referenced Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb74606c0 (LWP 14792)] 0xb7e1e2be in gtk_tree_model_get_valist () from /usr/lib/libgtk-x11-2.0.so.0 (gdb) bt #0 0xb7e1e2be in gtk_tree_model_get_valist () from /usr/lib/libgtk-x11-2.0.so.0 #1 0xb7e1e4d2 in gtk_tree_model_get () from /usr/lib/libgtk-x11-2.0.so.0 #2 0x08077156 in xa_open_with_dialog_selection_changed (selection=0x8405c80, data=0x849f8d8) at open-with-dlg.c:293 #3 0xb7a48aef in g_cclosure_marshal_VOID__VOID () from /usr/lib/libgobject-2.0.so.0 #4 0xb7a3b749 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #5 0xb7a4ff7b in ?? () from /usr/lib/libgobject-2.0.so.0 #6 0xb7a51c0f in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #7 0xb7a51f59 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #8 0xb7e28045 in gtk_tree_selection_unselect_all () from /usr/lib/libgtk-x11-2.0.so.0 #9 0xb7e407f4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #10 0xb7e40c70 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #11 0xb7e41907 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #12 0xb7d3d8d4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #13 0xb7a3a069 in ?? () from /usr/lib/libgobject-2.0.so.0 #14 0xb7a3b81f in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #15 0xb7a5010a in ?? () from /usr/lib/libgobject-2.0.so.0 #16 0xb7a51937 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #17 0xb7a51f59 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #18 0xb7e5c667 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 ---Type <return> to continue, or q <return> to quit--- #19 0xb7e6ddf0 in gtk_window_propagate_key_event () from /usr/lib/libgtk-x11-2.0.so.0 #20 0xb7e70f5c in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #21 0xb7d3d8d4 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #22 0xb7a3a069 in ?? () from /usr/lib/libgobject-2.0.so.0 #23 0xb7a3b749 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #24 0xb7a5010a in ?? () from /usr/lib/libgobject-2.0.so.0 #25 0xb7a51937 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #26 0xb7a51f59 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #27 0xb7e5c667 in ?? () from /usr/lib/libgtk-x11-2.0.so.0 #28 0xb7d36c0d in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0 #29 0xb7d37d88 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0 #30 0xb7bb0a9a in ?? () from /usr/lib/libgdk-x11-2.0.so.0 #31 0xb79aecc6 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #32 0xb79b2083 in ?? () from /usr/lib/libglib-2.0.so.0 #33 0xb79b2467 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 #34 0xb7d38264 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0 #35 0x0805526b in main (argc=1, argv=0xbff0b654) at main.c:298 Please tell me if you need anything else.
Yeah I (In reply to comment #0) > Right click on any file and open the "open with" dialog. Press any letter key > of your keyboard, such as "g". The application crashes. Yeah I was aware of this bug but honestly I wasn't able to fix it. > Please tell me if you need anything else. The fix to this bug :)
Created attachment 1995 test if there is a selected node in the tree before getting exec command test this patch, it works for me.
Fixed in revision 28880. Many thanks for the patch, I would hardly found the mistake. Please keep on giving your nice contribution to Xarchiver, it's always appreciated.