[maemo-commits] [maemo-commits] r19427 - in projects/haf/trunk/gtk+: . gtk

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Fri Oct 9 16:34:41 EEST 2009
Author: mitch
Date: 2009-10-09 16:34:35 +0300 (Fri, 09 Oct 2009)
New Revision: 19427

Modified:
   projects/haf/trunk/gtk+/ChangeLog
   projects/haf/trunk/gtk+/gtk/gtktextbufferserialize.c
Log:
2009-10-09  Michael Natterer  <mitch at lanedo.com>

	Fixes: NB#131644 - Unable to launch FKB when smileys are copied
	and pasted in notes application.

	Apply patch from Kristian Rietveld:

	* gtk/gtktextbufferserialize.c (serialize_text): in the main
	serialization char iteration loop, skip over pixbufs we are unable
	to retreive; additionally, if we still can't forward the iter,
	break out of the loop instead of looping infinitely.



Modified: projects/haf/trunk/gtk+/ChangeLog
===================================================================
--- projects/haf/trunk/gtk+/ChangeLog	2009-10-09 13:15:55 UTC (rev 19426)
+++ projects/haf/trunk/gtk+/ChangeLog	2009-10-09 13:34:35 UTC (rev 19427)
@@ -1,8 +1,22 @@
 2009-10-09  Michael Natterer  <mitch at lanedo.com>
 
+	Fixes: NB#131644 - Unable to launch FKB when smileys are copied
+	and pasted in notes application.
+
+	Apply patch from Kristian Rietveld:
+
+	* gtk/gtktextbufferserialize.c (serialize_text): in the main
+	serialization char iteration loop, skip over pixbufs we are unable
+	to retreive; additionally, if we still can't forward the iter,
+	break out of the loop instead of looping infinitely.
+
+2009-10-09  Michael Natterer  <mitch at lanedo.com>
+
 	Fixes: NB#128756 - sliders in profiles, responding for up/down
 	arrow keys, though focus not visible
 
+	Apply patch from Kristian Rietveld:
+
 	* gtk/gtkscale.c (gtk_scale_init): unset the GTK_CAN_FOCUS flag
 	on all scale widgets.
 
@@ -23,7 +37,7 @@
 	* gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_size_changed): apply
 	patch from Gordon Williams to emit size-changed upon changes of
 	the _MAEMO_SCREEN_WIDTH and HEIGHT properties.
-	
+
 	* gdk/x11/gdkevents-x11.c (gdk_event_translate): listen for
 	property notify of _MAEMO_SCREEN_HEIGHT property here.
 

Modified: projects/haf/trunk/gtk+/gtk/gtktextbufferserialize.c
===================================================================
--- projects/haf/trunk/gtk+/gtk/gtktextbufferserialize.c	2009-10-09 13:15:55 UTC (rev 19426)
+++ projects/haf/trunk/gtk+/gtk/gtktextbufferserialize.c	2009-10-09 13:34:35 UTC (rev 19427)
@@ -524,6 +524,7 @@
       while (TRUE)
 	{
 	  gunichar ch = gtk_text_iter_get_char (&iter);
+          gboolean can_forward = FALSE;
 
 	  if (ch == 0xFFFC)
 	    {
@@ -537,7 +538,7 @@
 		  g_free (tmp_text);
 
 		  /* Forward so we don't get the 0xfffc char */
-		  gtk_text_iter_forward_char (&iter);
+		  can_forward = gtk_text_iter_forward_char (&iter);
 		  old_iter = iter;
 
 		  g_string_append (context->text_str, escaped_text);
@@ -548,15 +549,22 @@
 		  context->n_pixbufs++;
 		  context->pixbufs = g_list_prepend (context->pixbufs, pixbuf);
 		}
+              else
+                {
+		  /* If we cannot get the pixbuf for this iter, we skip
+                   * this one and move on.
+                   */
+		  can_forward = gtk_text_iter_forward_char (&iter);
+                }
 	    }
           else if (ch == 0)
             {
                 break;
             }
 	  else
-	    gtk_text_iter_forward_char (&iter);
+	    can_forward = gtk_text_iter_forward_char (&iter);
 
-	  if (gtk_text_iter_toggles_tag (&iter, NULL))
+	  if (!can_forward || gtk_text_iter_toggles_tag (&iter, NULL))
 	    break;
 	}
 

More information about the maemo-commits mailing list