gnome-utils r8279 - trunk/logview



Author: cosimoc
Date: Tue Dec 23 13:26:58 2008
New Revision: 8279
URL: http://svn.gnome.org/viewvc/gnome-utils?rev=8279&view=rev

Log:
Move signal handlers for the findbar and don't crash when trying to
search for a NULL text.

Modified:
   trunk/logview/logview.c

Modified: trunk/logview/logview.c
==============================================================================
--- trunk/logview/logview.c	(original)
+++ trunk/logview/logview.c	Tue Dec 23 13:26:58 2008
@@ -430,6 +430,12 @@
 
   wrapped = FALSE;
 
+  text = logview_findbar_get_text (LOGVIEW_FINDBAR (logview->priv->find_bar));
+
+  if (!text) {
+    return;
+  }
+
   buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (logview->priv->text_view));
   search_start = gtk_text_buffer_get_mark (buffer, SEARCH_START_MARK);
   search_end = gtk_text_buffer_get_mark (buffer, SEARCH_END_MARK);
@@ -449,8 +455,6 @@
     }
   }
 
-  text = logview_findbar_get_text (LOGVIEW_FINDBAR (logview->priv->find_bar));
-
 wrap:
 
   if (forward) {
@@ -557,15 +561,6 @@
 logview_search (GtkAction *action, LogviewWindow *logview)
 {
   logview_findbar_open (LOGVIEW_FINDBAR (logview->priv->find_bar));
-
-  g_signal_connect (logview->priv->find_bar, "previous",
-                    G_CALLBACK (findbar_previous_cb), logview);
-  g_signal_connect (logview->priv->find_bar, "next",
-                    G_CALLBACK (findbar_next_cb), logview);
-  g_signal_connect (logview->priv->find_bar, "text_changed",
-                    G_CALLBACK (findbar_text_changed_cb), logview);
-  g_signal_connect (logview->priv->find_bar, "close",
-                    G_CALLBACK (findbar_close_cb), logview);
 }
 
 static void
@@ -946,6 +941,15 @@
   priv->find_bar = logview_findbar_new ();
   gtk_box_pack_end (GTK_BOX (main_view), priv->find_bar, FALSE, FALSE, 0);
 
+  g_signal_connect (priv->find_bar, "previous",
+                    G_CALLBACK (findbar_previous_cb), logview);
+  g_signal_connect (priv->find_bar, "next",
+                    G_CALLBACK (findbar_next_cb), logview);
+  g_signal_connect (priv->find_bar, "text_changed",
+                    G_CALLBACK (findbar_text_changed_cb), logview);
+  g_signal_connect (priv->find_bar, "close",
+                    G_CALLBACK (findbar_close_cb), logview);
+
   /* remember the original font size */
   context = gtk_widget_get_pango_context (priv->text_view);
   fontdesc = pango_context_get_font_description (context);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]