Summary: | freeze when using quick search | ||||||
---|---|---|---|---|---|---|---|
Product: | Claws Mail (GTK 2) | Reporter: | kardan | ||||
Component: | Filtering | Assignee: | users | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | normal | ||||||
Priority: | P3 | ||||||
Version: | 3.7.7 | ||||||
Hardware: | PC | ||||||
OS: | Linux | ||||||
Attachments: |
|
Description
kardan
2010-07-21 10:40:28 UTC
the stack frame goes into the Extended search instead of the From/To/Subject/Tag. Did you someone switch to Extended search? Also is this reproducible? I can't here. If you can reproduce please, give the steps here. Err.. actually the CVS code is changed in such part. So it's right. Can you test the CVS code? I guess the bug may be already fixed. hi, after two days the cvs18-build froze as well. There was no output on the console, while the backtrace looked similar: #0 0x004ff422 in __kernel_vsyscall () #1 0x05835d33 in __lll_lock_wait_private () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/lowlevellock.S:95 #2 0x057cc697 in _L_lock_9637 () from /lib/tls/i686/cmov/libc.so.6 #3 0x057caec6 in *__GI___libc_free (mem=0x9d1aaa0) at malloc.c:3736 #4 0x005bafc6 in IA__g_free (mem=0x9d1aaa0) at /build/buildd/glib2.0-2.24.1/glib/gmem.c:191 #5 0x0824bf7f in add_history (list=0xa231bc0, str=0xa46cf30 "cul") at utils.c:1012 #6 0x082ad2c6 in searchbar_run (quicksearch=0x9e4b370, run_only_if_fast=<value optimized out>) at quicksearch.c:237 #7 0x082aebf9 in searchbar_pressed (widget=0x9e53938, event=0x9e76d10, quicksearch=0x9e4b370) at quicksearch.c:328 #8 0x00f87424 in _gtk_marshal_BOOLEAN__BOXED (closure=0x9e5a780, return_value=0xbf98d194, n_param_values=2, param_values=0xa457d90, invocation_hint=0xbf98d180, marshal_data=0x82aeb90) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkmarshalers.c:84 #9 0x00b43252 in IA__g_closure_invoke (closure=0x9e5a780, return_value=0xbf98d194, n_param_values=2, param_values=0xa457d90, invocation_hint=0xbf98d180) at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:767 #10 0x00b5799d in signal_emit_unlocked_R (node=<value optimized out>, detail=<value optimized out>, instance=0x9e53938, emission_return=0xbf98d2dc, instance_and_params=0xa457d90) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3248 #11 0x00b58c33 in IA__g_signal_emit_valist (instance=0x9e53938, signal_id=50, detail=0, var_args=0xbf98d340 "lӘ\277X\213\321\thӘ\277\332C\v\001\364\257!\001\070\071\345\t\210Ә\277\070\071\345\t89\345\tX\213\321\t\210Ә\277") at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:2991 #12 0x00b59256 in IA__g_signal_emit (instance=0x9e53938, signal_id=50, detail=0) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038 #13 0x010b4636 in gtk_widget_event_internal (widget=<value optimized out>, event=0x9e76d10) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkwidget.c:4951 #14 0x010c659f in IA__gtk_window_propagate_key_event (window=0x9d3f820, event=0x9e76d10) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkwindow.c:5184 #15 0x010c98bc in gtk_window_key_press_event (widget=0x9d3f820, event=0x9e76d10) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkwindow.c:5214 #16 0x00f87424 in _gtk_marshal_BOOLEAN__BOXED (closure=0x9d2bf08, return_value=0xbf98d594, n_param_values=2, param_values=0x9d387b8, invocation_hint=0xbf98d580, marshal_data=0x10c9870) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkmarshalers.c:84 #17 0x00b418b9 in g_type_class_meta_marshal (closure=0x9d2bf08, return_value=0xbf98d594, n_param_values=2, param_values=0x9d387b8, invocation_hint=0xbf98d580, marshal_data=0xcc) at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:878 #18 0x00b43252 in IA__g_closure_invoke (closure=0x9d2bf08, return_value=0xbf98d594, n_param_values=2, param_values=0x9d387b8, invocation_hint=0xbf98d580) at /build/buildd/glib2.0-2.24.1/gobject/gclosure.c:767 #19 0x00b575e6 in signal_emit_unlocked_R (node=<value optimized out>, detail=<value optimized out>, instance=0x9d3f820, emission_return=0xbf98d6dc, instance_and_params=0x9d387b8) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3286 #20 0x00b58c33 in IA__g_signal_emit_valist (instance=0x9d3f820, signal_id=50, detail=0, var_args=0xbf98d740 "lט\277X\213\321\thט\277\332C\v\001\364\257!\001 \370\323\t\210ט\277 \370\323\t \370\323\tX\213\321\t\210ט\277") at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:2991 #21 0x00b59256 in IA__g_signal_emit (instance=0x9d3f820, signal_id=50, detail=0) at /build/buildd/glib2.0-2.24.1/gobject/gsignal.c:3038 #22 0x010b4636 in gtk_widget_event_internal (widget=<value optimized out>, event=0x9e76d10) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkwidget.c:4951 #23 0x00f7fb33 in IA__gtk_propagate_event (widget=0x9d3f820, event=0x9e76d10) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkmain.c:2421 #24 0x00f80e07 in IA__gtk_main_do_event (event=0x9e76d10) at /build/buildd/gtk+2.0-2.20.1/gtk/gtkmain.c:1647 #25 0x0044339a in gdk_event_dispatch (source=0x9d173d8, callback=0, user_data=0x0) at /build/buildd/gtk+2.0-2.20.1/gdk/x11/gdkevents-x11.c:2372 #26 0x005b25e5 in g_main_dispatch (context=0x9d17420) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:1960 #27 IA__g_main_context_dispatch (context=0x9d17420) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2513 #28 0x005b62d8 in g_main_context_iterate (context=0x9d17420, block=<value optimized out>, dispatch=1, self=0x9cb2e38) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2591 #29 0x005b6817 in IA__g_main_loop_run (loop=0x9cab238) at /build/buildd/glib2.0-2.24.1/glib/gmain.c:2799 #30 0x00f813c9 in IA__gtk_main () at /build/buildd/gtk+2.0-2.20.1/gtk/gtkmain.c:1219 #31 0x0813e50d in main (argc=1, argv=0xbf98db24) at main.c:1661 Created attachment 874 [details]
maybe fix invalid free of mem
Can you try the attached patch against CVS source?
g_list_free() of the last g_list_remove()d item is a bad idea ! Shouldn't the above be reversed? Is: if (last->data) g_free(last->data); list = g_list_remove(list, last->data); Should: if (last->data) { list = g_list_remove(list, last->data); g_free(last->data); } Indeed, it should. Commited :) Changes related to this bug have been committed. Please check latest CVS and update the bug accordingly. You can also get the patch from: http://www.colino.net/claws-mail/ 2010-07-25 [colin] 3.7.6cvs20 * src/common/utils.c Reverse free/use with more logical and safe use/free. Thanks to Michael Rasmussen ! 2010-07-24 [colin] 3.7.6cvs19 * src/gtk/quicksearch.c Finish 3.7.5cvs42 patch. Probably fixes bug 2232, 'freeze when using quick search' 2010-07-11 [iwkse] 3.7.6cvs18 * src/gtk/quicksearch.c Add SMALL_LAYOUT to quicksearch_relayout 2010-07-10 [iwkse] 3.7.6cvs17 * src/mainwindow.h Remove forgotten variable from the last bugfix #2224 2010-07-10 [colin] 3.7.6cvs16 * src/mainwindow.c * src/gtk/quicksearch.c Clean fix for bug #2224: don't mess with GTK settings when handling the layout ourselves is enough 2010-07-09 [iwkse] 3.7.6cvs15 * src/mainwindow.h * src/mainwindow.c Better fix for Bug #2224 2010-07-09 [iwkse] 3.7.6cvs14 * src/mainwindow.c Bug #2224 Always use stock icons on buttons 2010-07-08 [colin] 3.7.6cvs13 * src/gtk/filesel.c Fix bug 2223, 'Compilation fails with GTK+ 2.21.3'. Thanks to Jan Psota ! Do not add into quicksearch history matching rules with bad syntax Fix bug 2208. Encode encrypted password to qouted printable to avoid making invalid XML. Encoding will be activated the first time the password is changed. thanks, seems to be stable now. I assume this bug to be resolved. |