Description of problem: When right-click on any apps list and select "Information ..." menuitem, Appfinder crash for a /bad/ g_free() call. Version-Release number of selected component (if applicable): xfce4-appfinder-4.2.3-2.fc5 How reproducible: every time Steps to Reproduce: 1.Right-click on an app in list 2.select "Information ..." 3. Actual results: Program received signal SIGSEGV, Segmentation fault. 0x006da3da in free () from /lib/libc.so.6 (gdb) bt #0 0x006da3da in free () from /lib/libc.so.6 #1 0x00a515a1 in g_free () from /usr/lib/libglib-2.0.so.0 #2 0x0804b909 in cb_menuinfo (menuitem=0x8c24880, data=0x8c27cc8) at callbacks.c:275 #3 0x00afb1c9 in g_cclosure_marshal_VOID__VOID () from /usr/lib/libgobject-2.0.so.0 #4 0x00aedf6d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #5 0x00afea3d in g_signal_override_class_closure () from /usr/lib/libgobject-2.0.so.0 #6 0x00afff47 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #7 0x00b00109 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #8 0x004688e4 in gtk_widget_activate () from /usr/lib/libgtk-x11-2.0.so.0 #9 0x003853a8 in gtk_menu_shell_activate_item () from /usr/lib/libgtk-x11-2.0.so.0 #10 0x00386922 in gtk_menu_shell_append () from /usr/lib/libgtk-x11-2.0.so.0 #11 0x0037afaf in gtk_menu_attach () from /usr/lib/libgtk-x11-2.0.so.0 #12 0x0037952e in gtk_marshal_BOOLEAN__VOID () from /usr/lib/libgtk-x11-2.0.so.0 #13 0x00aec7a9 in g_value_set_static_boxed () from /usr/lib/libgobject-2.0.so.0 #14 0x00aedf6d in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #15 0x00aff083 in g_signal_override_class_closure () from /usr/lib/libgobject-2.0.so.0 #16 0x00affd0f in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 ---Type <return> to continue, or q <return> to quit--- #17 0x00b00109 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #18 0x004647e8 in gtk_widget_get_default_style () from /usr/lib/libgtk-x11-2.0.so.0 #19 0x00372f03 in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0 #20 0x00374157 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0 #21 0x00d3293a in gdk_add_client_message_filter () from /usr/lib/libgdk-x11-2.0.so.0 #22 0x00a4a15d in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #23 0x00a4d3ef in g_main_context_check () from /usr/lib/libglib-2.0.so.0 #24 0x00a4d799 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 #25 0x003745d4 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0 #26 0x0804d8d3 in main (argc=Cannot access memory at address 0x30 ) at main.c:597 #27 0x00688724 in __libc_start_main () from /lib/libc.so.6 #28 0x0804af61 in _start () (gdb) bt full #0 0x006da3da in free () from /lib/libc.so.6 No symbol table info available. #1 0x00a515a1 in g_free () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #2 0x0804b909 in cb_menuinfo (menuitem=0x8c24880, data=0x8c27cc8) at callbacks.c:275 icon = Variable "icon" is not available. Expected results: Additional info: 266 xfce_desktop_entry_get_string (dentry, _("Comment"), TRUE, &comment); 267 if (!comment) 268 { 269 comment = _("N/A"); 270 } 271 272 dlg->comment = gtk_label_new(NULL); 273 gtk_label_set_line_wrap (GTK_LABEL(dlg->comment), TRUE); 274 gtk_label_set_markup (GTK_LABEL(dlg->comment), g_strconcat(_("<b>Comment:</b> "), comment, NULL)); 275 g_free(comment); 276 gtk_misc_set_alignment (GTK_MISC(dlg->comment), 0, 0); 277 gtk_widget_show(dlg->comment); 278 gtk_box_pack_start (GTK_BOX (dlg->vboxl), dlg->comment, FALSE, FALSE, 0); 279 See line 269 and 275. _("....") macro return an gpointer (for g_free call)??
Created attachment 129405 [details] possible fix -imho- :)
Thanks for the bug report (and the patch!). I will see if I can duplicate and see if the patch works here. I note that in the 4.4b1 xfce4-appfinder this looks to be fixed just the way that your patch fixes it.
I was able to easily duplicate the issue here. The patch fixes it just fine. It should be fixed in the next release which is just building now. I am going to close this bug now, but if you spot any problems with the fix, reopen it or submit a new bug. Thanks again for the report and patch.