> Von: "Loïc Minier" <[EMAIL PROTECTED]> > Betreff: Re: Bug#400048: gtranslator: Segfaults very often when editing > > In this situation, the best would be to rebuild it with debugging > symbols and run it under valgrind.
OK, I rebuild gtranslatior using: DEB_BUILD_OPTIONS=debug,noopt,nostrip dpkg-buildpackage -uc -us -rfakeroot To reproduce: Simply keep copy and pasting between the text of the original message to the translated text. Now I get the following backtrace: *** glibc detected *** free(): invalid pointer: 0x08202f18 *** Program received signal SIGABRT, Aborted. [Switching to Thread -1224922368 (LWP 2909)] 0xb7fda410 in ?? () (gdb) bt #0 0xb7fda410 in ?? () #1 0xbfd9297c in ?? () #2 0x00000006 in ?? () #3 0x00000b5d in ?? () #4 0xb7366811 in raise () from /lib/tls/i686/cmov/libc.so.6 #5 0xb7367fb9 in abort () from /lib/tls/i686/cmov/libc.so.6 #6 0xb739bc8a in __fsetlocking () from /lib/tls/i686/cmov/libc.so.6 #7 0xb73a351f in mallopt () from /lib/tls/i686/cmov/libc.so.6 #8 0xb73a35c2 in free () from /lib/tls/i686/cmov/libc.so.6 #9 0xb74b3b31 in g_free () from /usr/lib/libglib-2.0.so.0 #10 0x08057c1e in get_selection_buffer (buffer=0x81222c8) at gui.c:581 #11 0x08057edb in gtranslator_clipboard_copy (widget=0x80fe838, useless=0x0) at gui.c:647 #12 0xb7531e1b in g_cclosure_marshal_VOID__VOID () from /usr/lib/libgobject-2.0.so.0 #13 0xb752498b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #14 0xb7534f2d in g_signal_chain_from_overridden () from /usr/lib/libgobject-2.0.so.0 #15 0xb7536429 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #16 0xb75365d9 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #17 0xb7a3792d in gtk_widget_can_activate_accel () from /usr/lib/libgtk-x11-2.0.so.0 #18 0xb752498b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #19 0xb7534f2d in g_signal_chain_from_overridden () from /usr/lib/libgobject-2.0.so.0 #20 0xb7536208 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #21 0xb75365d9 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #22 0xb7869f89 in gtk_accel_group_activate () from /usr/lib/libgtk-x11-2.0.so.0 #23 0xb786a08a in gtk_accel_groups_activate () from /usr/lib/libgtk-x11-2.0.so.0 #24 0xb7a4504a in gtk_window_activate_key () from /usr/lib/libgtk-x11-2.0.so.0 #25 0xb7a450bc in gtk_window_activate_key () from /usr/lib/libgtk-x11-2.0.so.0 #26 0xb7949250 in _gtk_marshal_BOOLEAN__BOXED () from /usr/lib/libgtk-x11-2.0.so.0 #27 0xb7522f49 in g_value_set_boxed () from /usr/lib/libgobject-2.0.so.0 #28 0xb752498b in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0 #29 0xb753556f in g_signal_chain_from_overridden () from /usr/lib/libgobject-2.0.so.0 #30 0xb7536208 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0 #31 0xb75365d9 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0 #32 0xb7a32e84 in gtk_widget_get_default_style () from /usr/lib/libgtk-x11-2.0.so.0 #33 0xb7942c0a in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0 #34 0xb7943e07 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0 #35 0xb77dbeea in _gdk_events_init () from /usr/lib/libgdk-x11-2.0.so.0 #36 0xb74ac731 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #37 0xb74af7a6 in g_main_context_check () from /usr/lib/libglib-2.0.so.0 ---Type <return> to continue, or q <return> to quit--- #38 0xb74afb67 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0 #39 0xb7944281 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0 #40 0x0805e056 in main (argc=2, argv=0xbfd93e94) at main.c:527 Running valgrind (I have never used that before) gives: (only the latest error, which is the same as in the backtrace): ==2980== Invalid free() / delete / delete[] ==2980== at 0x401CFA5: free (vg_replace_malloc.c:233) ==2980== by 0x4B18B30: g_free (in /usr/lib/libglib-2.0.so.0.1200.4) ==2980== by 0x8057C1D: get_selection_buffer (gui.c:581) ==2980== by 0x8057EDA: gtranslator_clipboard_copy (gui.c:647) ==2980== by 0x4ABAE1A: g_cclosure_marshal_VOID__VOID (in /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== by 0x4AAD98A: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== by 0x4ABDF2C: (within /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== by 0x4ABF428: g_signal_emit_valist (in /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== by 0x4ABF5D8: g_signal_emit (in /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== by 0x471092C: (within /usr/lib/libgtk-x11-2.0.so.0.800.20) ==2980== by 0x4AAD98A: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== by 0x4ABDF2C: (within /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== Address 0x5DDAE28 is 40 bytes inside a block of size 504 alloc'd ==2980== at 0x401C58B: memalign (vg_replace_malloc.c:332) ==2980== by 0x401C5E5: posix_memalign (vg_replace_malloc.c:421) ==2980== by 0x4B27F37: (within /usr/lib/libglib-2.0.so.0.1200.4) ==2980== by 0x4B2896E: g_slice_alloc (in /usr/lib/libglib-2.0.so.0.1200.4) ==2980== by 0x4931B3F: pango_item_copy (in /usr/lib/libpango-1.0.so.0.1400.7) ==2980== by 0x4931C31: pango_item_split (in /usr/lib/libpango-1.0.so.0.1400.7) ==2980== by 0x4936228: (within /usr/lib/libpango-1.0.so.0.1400.7) ==2980== by 0x49368B6: (within /usr/lib/libpango-1.0.so.0.1400.7) ==2980== by 0x49371BA: (within /usr/lib/libpango-1.0.so.0.1400.7) ==2980== by 0x460ABBA: (within /usr/lib/libgtk-x11-2.0.so.0.800.20) ==2980== by 0x460F0DD: (within /usr/lib/libgtk-x11-2.0.so.0.800.20) ==2980== by 0x4ABA48A: g_cclosure_marshal_VOID__BOXED (in /usr/lib/libgobject-2.0.so.0.1200.4) ==2980== ==2980== ERROR SUMMARY: 84 errors from 24 contexts (suppressed: 141 from 1) ==2980== malloc/free: in use at exit: 9,023,038 bytes in 122,467 blocks. ==2980== malloc/free: 490,097 allocs, 367,634 frees, 629,158,406 bytes allocated. ==2980== For counts of detected errors, rerun with: -v ==2980== searching for pointers to 122,467 not-freed blocks. ==2980== checked 3,635,084 bytes. ==2980== ==2980== LEAK SUMMARY: ==2980== definitely lost: 5,703,474 bytes in 68,373 blocks. ==2980== possibly lost: 270,937 bytes in 491 blocks. ==2980== still reachable: 3,048,627 bytes in 53,603 blocks. ==2980== suppressed: 0 bytes in 0 blocks. ==2980== Use --leak-check=full to see details of leaked memory. Hope that helps. Cheers, Martin. -- Der GMX SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen! Ideal für Modem und ISDN: http://www.gmx.net/de/go/smartsurfer -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]