# HG changeset patch # User Daniel Atallah # Date 1161627051 0 # Node ID 1986872f28683ff3d77d0601513ea7588c0c5e69 # Parent c678034a7e3e8afbfdd05a9823c9400bc8f43b05 [gaim-migrate @ 17566] fix searching in an empty conversation (SF bug #1582852) committer: Tailor Script diff -r c678034a7e3e -r 1986872f2868 gtk/gtkimhtml.c --- a/gtk/gtkimhtml.c Mon Oct 23 17:53:55 2006 +0000 +++ b/gtk/gtkimhtml.c Mon Oct 23 18:10:51 2006 +0000 @@ -3531,22 +3531,25 @@ { GtkTextIter iter, start, end; gboolean new_search = TRUE; + GtkTextMark *start_mark; g_return_val_if_fail(imhtml != NULL, FALSE); g_return_val_if_fail(text != NULL, FALSE); - if (imhtml->search_string && !strcmp(text, imhtml->search_string)) + start_mark = gtk_text_buffer_get_mark(imhtml->text_buffer, "search"); + + if (start_mark && imhtml->search_string && !strcmp(text, imhtml->search_string)) new_search = FALSE; if (new_search) { gtk_imhtml_search_clear(imhtml); + g_free(imhtml->search_string); + imhtml->search_string = g_strdup(text); gtk_text_buffer_get_start_iter(imhtml->text_buffer, &iter); } else { gtk_text_buffer_get_iter_at_mark(imhtml->text_buffer, &iter, - gtk_text_buffer_get_mark(imhtml->text_buffer, "search")); + start_mark); } - g_free(imhtml->search_string); - imhtml->search_string = g_strdup(text); if (gtk_source_iter_forward_search(&iter, imhtml->search_string, GTK_SOURCE_SEARCH_VISIBLE_ONLY | GTK_SOURCE_SEARCH_CASE_INSENSITIVE,