Bug 192195

Summary: Crash on RightClick -> Information on any app
Product: [Fedora] Fedora Reporter: Giandomenico De Tullio <ghisha>
Component: xfce4-appfinderAssignee: Kevin Fenzi <kevin>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 5CC: extras-qa
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 4.2.3-3.fc5 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-05-18 20:42:23 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
possible fix -imho- :) none

Description Giandomenico De Tullio 2006-05-18 10:29:33 UTC
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)??

Comment 1 Giandomenico De Tullio 2006-05-18 10:29:34 UTC
Created attachment 129405 [details]
possible fix -imho- :)

Comment 2 Kevin Fenzi 2006-05-18 16:26:55 UTC
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. 

Comment 3 Kevin Fenzi 2006-05-18 20:42:23 UTC
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.