From 4c29f2a7a14e0693783d9936ee3e7736b645bb2f Mon Sep 17 00:00:00 2001 From: jhs Date: Tue, 22 Apr 2008 11:57:43 +0000 Subject: [PATCH] 2008-04-22 Johannes Schmid * plugins/search/search-replace.c (search_and_replace), (on_message_view_destroyed): Don\'t spit out two many warnings when the message view is destroyed * plugins/search/search-replace_backend.c (file_buffer_new_from_path): Only use first 500 characters for validation git-svn-id: http://svn.gnome.org/svn/anjuta/trunk@3881 1dbfb86a-d425-0410-a06b-cb591aac69f6 --- ChangeLog | 10 ++++++++++ plugins/search/search-replace.c | 9 ++++++++- plugins/search/search-replace_backend.c | 5 ++++- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5261945b..65ccf301 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2008-04-22 Johannes Schmid + + * plugins/search/search-replace.c (search_and_replace), + (on_message_view_destroyed): + Don't spit out two many warnings when the message view is destroyed + + * plugins/search/search-replace_backend.c + (file_buffer_new_from_path): + Only use first 500 characters for validation + 2008-04-21 Johannes Schmid * plugins/search/plugin.c (find_incremental): diff --git a/plugins/search/search-replace.c b/plugins/search/search-replace.c index 99ea4837..0177eb83 100644 --- a/plugins/search/search-replace.c +++ b/plugins/search/search-replace.c @@ -228,6 +228,7 @@ static GladeWidget glade_widgets[] = { static void write_message_pane(IAnjutaMessageView* view, FileBuffer *fb, SearchEntry *se, MatchInfo *mi); static gboolean on_message_clicked (GObject* object, gchar* message, gpointer data); +static void on_message_view_destroyed (gpointer unused, GObject* where_the_object_was); static void on_message_buffer_flush (IAnjutaMessageView *view, const gchar *one_line, gpointer data); static void save_not_opened_files(FileBuffer *fb); static gboolean replace_in_not_opened_files(FileBuffer *fb, MatchInfo *mi, gchar *repl_str); @@ -326,7 +327,6 @@ search_and_replace (void) view = ianjuta_message_manager_get_view_by_name(msgman, name, NULL); if (view == NULL) { - // FIXME: Put a nice icon here: view = ianjuta_message_manager_add_view(msgman, name, GTK_STOCK_FIND_AND_REPLACE, NULL); g_return_if_fail(view != NULL); @@ -334,6 +334,7 @@ search_and_replace (void) G_CALLBACK (on_message_buffer_flush), NULL); g_signal_connect (G_OBJECT(view), "message_clicked", G_CALLBACK (on_message_clicked), NULL); + g_object_weak_ref (G_OBJECT(view), on_message_view_destroyed, NULL); } else ianjuta_message_view_clear(view, NULL); @@ -674,6 +675,12 @@ write_message_pane(IAnjutaMessageView* view, FileBuffer *fb, SearchEntry *se, } static void +on_message_view_destroyed (gpointer unused, GObject* where_the_object_was) +{ + end_activity = TRUE; +} + +static void on_message_buffer_flush (IAnjutaMessageView *view, const gchar *one_line, gpointer data) { diff --git a/plugins/search/search-replace_backend.c b/plugins/search/search-replace_backend.c index 95f964c7..80e704a6 100644 --- a/plugins/search/search-replace_backend.c +++ b/plugins/search/search-replace_backend.c @@ -145,6 +145,9 @@ file_buffer_new_from_te (IAnjutaEditor *te) return fb; } +/* Only use the first 500 chars for validating (yes, I feel lucky...) */ +#define MAX_VALIDATE 500 + FileBuffer * file_buffer_new_from_path (const char *path, const char *buf, int len, int pos) { @@ -219,7 +222,7 @@ file_buffer_new_from_path (const char *path, const char *buf, int len, int pos) } } } - if (!g_utf8_validate (fb->buf, fb->len, NULL)) + if (!g_utf8_validate (fb->buf, MIN(MAX_VALIDATE, fb->len), NULL)) { const AnjutaEncoding *encoding_used = NULL; gchar* converted_text; -- 2.11.4.GIT