After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 308785 - Gftp-gtk crash on use
Gftp-gtk crash on use
Status: RESOLVED FIXED
Product: gftp
Classification: Other
Component: general
2.0.18
Other Linux
: Normal normal
: ---
Assigned To: Brian Masney
Brian Masney
Depends on:
Blocks:
 
 
Reported: 2005-06-23 15:05 UTC by Sebastien Bacher
Modified: 2006-07-22 13:41 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastien Bacher 2005-06-23 15:05:13 UTC
This bug has been opened here: https://bugzilla.ubuntu.com/9767

"When I use gftp-gtk for any time, the application crash and close
...
It crash when it connect at host or upload archives.
But it crash when I use for a time, not when I start it.
Sorry for my English."
Comment 1 Sebastien Bacher 2005-06-23 15:12:20 UTC
from the ubuntu bug: 

"Program received signal SIGSEGV, Segmentation fault.

Thread NaN (LWP 8503)

  • #0 _gtk_text_btree_get_line_at_char
    at gtktextbtree.c line 2116
  • #1 _gtk_text_btree_get_iter_at_char
    at gtktextiter.c line 5074
  • #2 gtk_text_buffer_get_iter_at_offset
    at gtktextbuffer.c line 2542
  • #3 ??
  • #4 ??
  • #5 ??
  • #6 ??
  • #7 ??
  • #8 ??
  • #9 ??
  • #10 ??
  • #11 ??
  • #12 ??
  • #13 ??
  • #14 ??
  • #15 ??
  • #16 ??
  • #17 _IO_stdin_used
  • #18 _IO_stdin_used
  • #19 ??
  • #20 ??
  • #21 ??
  • #22 ??
  • #23 ??
  • #24 ??
  • #25 ??
  • #26 ??
  • #27 ??
  • #28 ??
  • #29 ??
  • #30 ??
  • #31 ??
  • #32 gtk_text_buffer_get_type
    at gtktextbuffer.c line 136
  • #33 ??
  • #34 ??
  • #35 ??
  • #36 _IO_stdin_used
  • #37 ??
  • #38 ??
  • #39 ??
  • #40 ??
  • #41 pthread_mutex_destroy
    from /lib/tls/i686/cmov/libpthread.so.0
  • #42 ??
  • #43 ??
  • #44 ??
  • #45 ??
  • #46 ??
  • #47 ??
  • #48 ??
  • #49 gettimeofday
    from /lib/tls/i686/cmov/libc.so.6
  • #50 g_get_current_time
    from /usr/lib/libglib-2.0.so.0
  • #51 g_main_context_wakeup
    from /usr/lib/libglib-2.0.so.0
  • #52 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #53 g_main_context_check
    from /usr/lib/libglib-2.0.so.0
  • #54 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #55 gtk_main
    at gtkmain.c line 963
  • #56 ??
  • #57 ??
  • #58 ??
  • #59 ??
  • #60 ??
  • #61 ??
  • #62 ??
  • #63 ??
  • #64 ??
  • #65 ??
    from /lib/tls/i686/cmov/libc.so.6
  • #66 ??
  • #67 ??
  • #68 ??
  • #69 __cxa_atexit
    from /lib/tls/i686/cmov/libc.so.6
  • #70 __libc_start_main
    from /lib/tls/i686/cmov/libc.so.6
  • #71 ??

Comment 2 Sebastien Bacher 2005-06-23 15:14:05 UTC
not sure if that's what causes this crash be there seems to have a double free()
somewhere:

==31820== Invalid free() / delete / delete[]
==31820==    at 0x1B906ADD: free (vg_replace_malloc.c:152)
==31820==    by 0x1BEDD8AA: freeaddrinfo (getaddrinfo.c:1678)
==31820==    by 0x806D58F: gftp_disconnect (in /usr/bin/gftp-gtk)
==31820==    by 0x806D1A3: gftp_request_destroy (in /usr/bin/gftp-gtk)
==31820==    by 0x806BA0B: free_tdata (in /usr/bin/gftp-gtk)
==31820==    by 0x8063DA8: transfer_done (in /usr/bin/gftp-gtk)
==31820==    by 0x8064A6A: update_downloads (in /usr/bin/gftp-gtk)
==31820==    by 0x1BD69073: ??? (gmain.c:3292)
==31820==    by 0x1BD672C0: g_main_context_dispatch (gmain.c:1933)
==31820==    by 0x1BD6A516: ??? (gmain.c:2564)
==31820==    by 0x1BD6AA67: g_main_loop_run (gmain.c:2768)
==31820==    by 0x1BA35C44: gtk_main (gtkmain.c:974)
==31820==  Address 0x1C549148 is 0 bytes inside a block of size 16 free'd
==31820==    at 0x1B906ADD: free (vg_replace_malloc.c:152)
==31820==    by 0x1BD6DCE1: g_free (gmem.c:187)
==31820==    by 0x1BCD96A2: pango_attr_iterator_destroy (pango-attributes.c:1551)
==31820==    by 0x1BCE2C56: pango_layout_check_lines (pango-layout.c:3280)
==31820==    by 0x1BCE324A: pango_layout_get_extents_internal (pango-layout.c:2005)
==31820==    by 0x1BCE41B1: pango_layout_get_pixel_extents (pango-layout.c:2193)
==31820==    by 0x1B99A549: ??? (gtkclist.c:5804)
==31820==    by 0x1B99AC73: ??? (gtkclist.c:5952)
==31820==    by 0x1B9943CD: gtk_clist_thaw (gtkclist.c:1333)
==31820==    by 0x1B9993C2: ??? (gtkclist.c:4118)
==31820==    by 0x1B99C1AC: ??? (gtkclist.c:5172)
==31820==    by 0x1BA37DE1: _gtk_marshal_BOOLEAN__BOXED (gtkmarshalers.c:83)

and it crashes sometime with:

Program received signal SIGSEGV, Segmentation fault.

Thread NaN (LWP 32518)

  • #0 free
    from /lib/tls/i686/cmov/libc.so.6
  • #1 freeaddrinfo
    from /lib/tls/i686/cmov/libc.so.6
  • #2 gftp_disconnect
  • #3 gftp_request_destroy
  • #4 free_tdata
  • #5 transfer_done
  • #6 update_downloads
  • #7 g_timeout_dispatch
    at gmain.c line 3292
  • #8 IA__g_main_context_dispatch
    at gmain.c line 1933
  • #9 g_main_context_iterate
    at gmain.c line 2564
  • #10 IA__g_main_loop_run
    at gmain.c line 2768
  • #11 IA__gtk_main
    at gtkmain.c line 974
  • #12 main

Comment 3 M G 2005-09-12 02:52:24 UTC
Me too:

(gdb) bt
  • #0 malloc_usable_size
    from /lib/tls/i686/cmov/libc.so.6
  • #1 free
    from /lib/tls/i686/cmov/libc.so.6
  • #2 malloc
    from /lib/tls/i686/cmov/libc.so.6
  • #3 g_malloc
    from /usr/lib/libglib-2.0.so.0
  • #4 pango_log2vis_get_embedding_levels
    from /usr/lib/libpango-1.0.so.0
  • #5 pango_context_get_base_dir
    from /usr/lib/libpango-1.0.so.0
  • #6 pango_itemize_with_base_dir
    from /usr/lib/libpango-1.0.so.0
  • #7 pango_layout_iter_get_char_extents
    from /usr/lib/libpango-1.0.so.0
  • #8 pango_layout_iter_get_char_extents
    from /usr/lib/libpango-1.0.so.0
  • #9 gtk_label_get_use_underline
    from /usr/lib/libgtk-x11-2.0.so.0
  • #10 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #14 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #15 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #16 gtk_size_group_remove_widget
  • #17 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #18 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #19 gtk_vbox_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #20 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #21 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #22 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #23 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #24 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #25 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #26 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #27 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #28 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #29 gtk_frame_get_shadow_type
    from /usr/lib/libgtk-x11-2.0.so.0
  • #30 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #31 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #32 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #33 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #34 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #35 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #36 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #37 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #38 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #39 gtk_hbox_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #40 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #41 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #42 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #43 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #44 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #45 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #46 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #47 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #48 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #49 gtk_hpaned_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #50 g_cclosure_marshal_VOID__BOXED
  • #51 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #52 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #53 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #54 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #55 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #56 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #57 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #58 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #59 gtk_vpaned_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #60 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #61 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #62 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #63 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #64 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #65 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #66 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #67 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #68 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #69 gtk_vpaned_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #70 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #71 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #72 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #73 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #74 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #75 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #76 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #77 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #78 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #79 gtk_vbox_new
    from /usr/lib/libgtk-x11-2.0.so.0
  • #80 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #81 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #82 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #83 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #84 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #85 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #86 gtk_size_group_remove_widget
  • #87 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #88 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #89 gtk_window_reshow_with_initial_size
    from /usr/lib/libgtk-x11-2.0.so.0
  • #90 g_cclosure_marshal_VOID__BOXED
    from /usr/lib/libgobject-2.0.so.0
  • #91 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #92 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #93 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #94 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #95 g_signal_emit_by_name
    from /usr/lib/libgobject-2.0.so.0
  • #96 gtk_size_group_remove_widget
    from /usr/lib/libgtk-x11-2.0.so.0
  • #97 _gtk_size_group_compute_requisition
    from /usr/lib/libgtk-x11-2.0.so.0
  • #98 gtk_widget_size_request
    from /usr/lib/libgtk-x11-2.0.so.0
  • #99 _gtk_window_constrain_size
    from /usr/lib/libgtk-x11-2.0.so.0
  • #100 gtk_window_get_position
    from /usr/lib/libgtk-x11-2.0.so.0
  • #101 g_cclosure_marshal_VOID__VOID
    from /usr/lib/libgobject-2.0.so.0
  • #102 g_cclosure_new_swap
    from /usr/lib/libgobject-2.0.so.0
  • #103 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #104 g_signal_stop_emission
    from /usr/lib/libgobject-2.0.so.0
  • #105 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #106 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #107 gtk_container_check_resize
    from /usr/lib/libgtk-x11-2.0.so.0
  • #108 gtk_container_check_resize
    from /usr/lib/libgtk-x11-2.0.so.0
  • #109 g_child_watch_add
    from /usr/lib/libglib-2.0.so.0
  • #110 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #111 g_main_context_check
    from /usr/lib/libglib-2.0.so.0
  • #112 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #113 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #114 ??
  • #115 ??
  • #116 ??
  • #117 ??
  • #118 ??
  • #119 ??
  • #120 ??
  • #121 ??
  • #122 ??
  • #123 ??
    from /lib/tls/i686/cmov/libc.so.6
  • #124 ??
  • #125 ??
  • #126 ??
  • #127 ??
    from /lib/ld-linux.so.2
  • #128 ??
    from /lib/tls/i686/cmov/libc.so.6
  • #129 ??
  • #130 ??
  • #131 ??
  • #132 ??
    from /lib/tls/i686/cmov/libc.so.6
  • #133 ??
  • #134 __libc_start_main
    from /lib/tls/i686/cmov/libc.so.6
  • #135 __libc_start_main
    from /lib/tls/i686/cmov/libc.so.6
  • #136 ??

Comment 4 Chris Sharkey 2005-10-05 02:04:28 UTC
I am able to reproduce the error by switching from UPLOADING to DOWNLOADING and
vice versa.

For instance if I upload a file to a server that's fine, then I can upload
another file. But as soon as I try to DOWNLOAD a file after uploading gftp
crashes. Sometimes the file transfer completes and it crashes and sometimes it
crashes immediately.

The same thing happens if i DOWNLOAD a file and then try and UPLOAD.
Comment 5 Sebastien Bacher 2005-10-06 14:23:49 UTC
seems to be fixed by the patch from #314626
Comment 6 Brian Masney 2006-07-22 13:41:01 UTC
This is fixed in CVS. I have a test release at http://www.gftp.org/gftp-test.tar.bz2. Thanks and sorry about the delay.