Bug 121317

Summary: gtkam segfaults when trying to save debug information
Product: [Fedora] Fedora Reporter: Manuel "Chilli" Chakravarty <chak>
Component: gtkamAssignee: Tim Waugh <twaugh>
Status: CLOSED WONTFIX QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhide   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-07-27 17:25:29 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:

Description Manuel "Chilli" Chakravarty 2004-04-20 12:55:06 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6)
Gecko/20040312 Galeon/1.3.14

Description of problem:
When trying to save debug information, after OKing the file selector
box, gtkam terminates with a SEGV.

Version-Release number of selected component (if applicable):
gtkam-0.1.10-5

How reproducible:
Always

Steps to Reproduce:
1. Select in the menu bar: Help->Debug
2. Click the button "Save As"
3. Click "Ok" in the file selector
    

Actual Results:  gtkam seg faults and the file that is supposed to
contain the debug information is empty.

Expected Results:  No SEGV and the debug information to be contained
in the specified file.

Additional info:

When failing, gtkam - or rather GTK+ - writes the following message to
the stdout:

(gtkam:3301): Gtk-CRITICAL **: file gtktextbuffer.c: line 1482
(gtk_text_buffer_get_text): assertion `start != NULL' failed
S

Comment 1 Manuel "Chilli" Chakravarty 2004-04-20 13:17:18 UTC
After downloading and saving a picture from a camera, gtkam also
segfaults.  These issues may be related.  In any case, when saving,
there is no Gtk-CRITICAL message.  The following is the start of a gdb
backtrace after the SEGV:

#0  0x0076dacd in malloc_consolidate () from /lib/tls/libc.so.6
#1  0x0076d0ca in _int_malloc () from /lib/tls/libc.so.6
#2  0x0076c4bd in malloc () from /lib/tls/libc.so.6
#3  0x009a36f6 in g_try_malloc () from /usr/lib/libglib-2.0.so.0
#4  0x00acda01 in gdk_pixbuf_copy () from /usr/lib/libgdk_pixbuf-2.0.so.0
#5  0x06beac0a in gtk_style_apply_default_background ()
   from /usr/lib/libgtk-x11-2.0.so.0
#6  0x06bea857 in gtk_style_render_icon () from
/usr/lib/libgtk-x11-2.0.so.0
#7  0x06b6b547 in gtk_icon_set_copy () from /usr/lib/libgtk-x11-2.0.so.0
#8  0x06b6b7a8 in gtk_icon_set_render_icon () from
/usr/lib/libgtk-x11-2.0.so.0
#9  0x06c97136 in gtk_widget_render_icon () from
/usr/lib/libgtk-x11-2.0.so.0
#10 0x06b74851 in gtk_image_get () from /usr/lib/libgtk-x11-2.0.so.0
#11 0x06b96854 in gtk_marshal_VOID__UINT_STRING ()
   from /usr/lib/libgtk-x11-2.0.so.0
#12 0x00a014f7 in g_cclosure_new_swap () from /usr/lib/libgobject-2.0.so.0
#13 0x00a01160 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#14 0x00a14bc5 in g_signal_emit_by_name () from
/usr/lib/libgobject-2.0.so.0
#15 0x00a13f2e in g_signal_emit_valist () from
/usr/lib/libgobject-2.0.so.0
#16 0x00a14454 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#17 0x06c943b5 in gtk_widget_send_expose () from
/usr/lib/libgtk-x11-2.0.so.0
#18 0x06b1771b in gtk_container_propagate_expose ()
   from /usr/lib/libgtk-x11-2.0.so.0
#19 0x06b1737f in gtk_container_get_focus_hadjustment ()
   from /usr/lib/libgtk-x11-2.0.so.0


Comment 2 Tim Waugh 2004-04-20 13:27:42 UTC
If you run 'MALLOC_CHECK_=2 gtkam', do you get a segfault in a more
useful place?  Problems in malloc_consolidate indicate memory handling
problems.

Comment 3 Manuel "Chilli" Chakravarty 2004-04-20 14:56:07 UTC
With MALLOC_CHECK_=2, I don't get a segfault, but instead the
following warning:

** (gtkam:4646): WARNING **: Invalid UTF8 string passed to
pango_layout_set_text()

Looks like an invalid pointer is passed around whose value is
different under the non-standard memory malloc() implementation used
by MALLOC_CHECK_.  (BTW, the behaviour is the same for MALLOC_CHECK_=1.)

I experimented a bit more and the problem doesn't seem to be related
to the actual downloading and saving of the picture.  If I select a
picture, do File->Save Photos->Selected, and then click "Cancel" in
the following dialog box, gtkam segfaults, too (and prints the warning
 re pango_layout_set_text() when using MALLOC_CHECK_).

It appears as if the cleanup code that is executed after a dialog
finishes tickles the bug.

Comment 4 Tim Waugh 2004-04-20 17:59:23 UTC
See also bug #119094.

Comment 5 Tim Waugh 2004-04-21 10:40:35 UTC
On the off-chance that 0.1.11 (released last month) fixes the problem,
please could you try this package?:

ftp://people.redhat.com/twaugh/tmp/gtkam/gtkam-0.1.11-0.1.i386.rpm


Comment 6 Manuel "Chilli" Chakravarty 2004-04-22 11:16:39 UTC
With 0.1.11, the segfault is gone (as well as the complaint by
pango_layout_set_text() when run with MALLOC_CHECK_=2); however, the 
Gtk-CRITICAL remains (and terminates the application).

As a consequence, saving files is now fine, but saving debug
information is still broken.

Comment 7 Tim Waugh 2004-07-06 15:08:06 UTC
Is gtkam-0.1.12-2 any better (in Fedora development)?

Comment 8 Tim Waugh 2005-07-27 17:25:29 UTC
We no longer ship gtkam.