[gtk+] textiter: don't call g_utf8_prev_char() on start of string



commit 6e4e7c22a028171c9c2df7041b036878b5bcbf42
Author: Sébastien Wilmet <swilmet gnome org>
Date:   Thu Jul 31 14:11:49 2014 +0200

    textiter: don't call g_utf8_prev_char() on start of string
    
    Changes also the "goto finally" with a break. A break is more common.
    
    Another way is to use g_utf8_find_prev_char().
    
    https://bugzilla.gnome.org/show_bug.cgi?id=638709

 gtk/gtktextiter.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/gtk/gtktextiter.c b/gtk/gtktextiter.c
index 5a53581..53fe4db 100644
--- a/gtk/gtktextiter.c
+++ b/gtk/gtktextiter.c
@@ -4641,14 +4641,17 @@ utf8_strrcasestr (const gchar *haystack,
   p = g_utf8_offset_to_pointer (caseless_haystack, i);
   needle_len = strlen (needle);
 
-  while (p >= caseless_haystack)
+  while (TRUE)
     {
       if (exact_prefix_cmp (p, needle, needle_len))
         {
           ret = pointer_from_offset_skipping_decomp (haystack, i);
-          goto finally;
+          break;
         }
 
+      if (p == caseless_haystack)
+        break;
+
       p = g_utf8_prev_char (p);
       i--;
     }


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