Revert "textbuffer: nicer get_iter functions" and related commits since
this broke the bindings API. (Closes: #804798)
This commit is contained in:
		
							
								
								
									
										7
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							@ -1,3 +1,10 @@
 | 
				
			|||||||
 | 
					gtk+3.0 (3.18.3-3) UNRELEASED; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  * Revert "textbuffer: nicer get_iter functions" and related commits since
 | 
				
			||||||
 | 
					    this broke the bindings API. (Closes: #804798)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 -- Michael Biebl <biebl@debian.org>  Thu, 12 Nov 2015 18:48:41 +0100
 | 
				
			||||||
 | 
					
 | 
				
			||||||
gtk+3.0 (3.18.3-2) unstable; urgency=medium
 | 
					gtk+3.0 (3.18.3-2) unstable; urgency=medium
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  * The placesview API was not supposed to be public, so those symbols were
 | 
					  * The placesview API was not supposed to be public, so those symbols were
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										344
									
								
								debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										344
									
								
								debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,344 @@
 | 
				
			|||||||
 | 
					From 0dc66f5125196ee10c7e851b75f16e9f5669eb49 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Matthias Clasen <mclasen@redhat.com>
 | 
				
			||||||
 | 
					Date: Thu, 12 Nov 2015 10:34:48 -0500
 | 
				
			||||||
 | 
					Subject: [PATCH 1/2] Revert "textbuffer: nicer get_iter functions"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This reverts commit cf51c4f6dbd91dae1878a0cb0d08b24c67e15232.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This change broke binding api.
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 gtk/gtktextbuffer.c        |  95 ++++++++--------------------------
 | 
				
			||||||
 | 
					 gtk/gtktextbuffer.h        |  34 ++++++-------
 | 
				
			||||||
 | 
					 testsuite/gtk/textbuffer.c | 123 ---------------------------------------------
 | 
				
			||||||
 | 
					 3 files changed, 37 insertions(+), 215 deletions(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/gtk/gtktextbuffer.c b/gtk/gtktextbuffer.c
 | 
				
			||||||
 | 
					index 7295021..1bf1b68 100644
 | 
				
			||||||
 | 
					--- a/gtk/gtktextbuffer.c
 | 
				
			||||||
 | 
					+++ b/gtk/gtktextbuffer.c
 | 
				
			||||||
 | 
					@@ -2862,48 +2862,22 @@ gtk_text_buffer_remove_all_tags (GtkTextBuffer     *buffer,
 | 
				
			||||||
 | 
					  * @line_number: line number counting from 0
 | 
				
			||||||
 | 
					  * @char_offset: char offset from start of line
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					- * Obtains an iterator pointing to @char_offset within the given line. Note
 | 
				
			||||||
 | 
					- * characters, not bytes; UTF-8 may encode one character as multiple bytes.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Before the 3.20 version, it was not allowed to pass an invalid location.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Since the 3.20 version, if @line_number is greater than the number of lines
 | 
				
			||||||
 | 
					- * in the @buffer, the end iterator is returned. And if @char_offset is off the
 | 
				
			||||||
 | 
					- * end of the line, the iterator at the end of the line is returned.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Returns: whether the exact position has been found (since 3.20).
 | 
				
			||||||
 | 
					+ * Obtains an iterator pointing to @char_offset within the given
 | 
				
			||||||
 | 
					+ * line. The @char_offset must exist, offsets off the end of the line
 | 
				
			||||||
 | 
					+ * are not allowed. Note characters, not bytes;
 | 
				
			||||||
 | 
					+ * UTF-8 may encode one character as multiple bytes.
 | 
				
			||||||
 | 
					  **/
 | 
				
			||||||
 | 
					-gboolean
 | 
				
			||||||
 | 
					+void
 | 
				
			||||||
 | 
					 gtk_text_buffer_get_iter_at_line_offset (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					                                          GtkTextIter   *iter,
 | 
				
			||||||
 | 
					                                          gint           line_number,
 | 
				
			||||||
 | 
					                                          gint           char_offset)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					-  GtkTextIter end_line_iter;
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_return_val_if_fail (iter != NULL, FALSE);
 | 
				
			||||||
 | 
					-  g_return_val_if_fail (GTK_IS_TEXT_BUFFER (buffer), FALSE);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  if (line_number >= gtk_text_buffer_get_line_count (buffer))
 | 
				
			||||||
 | 
					-    {
 | 
				
			||||||
 | 
					-      gtk_text_buffer_get_end_iter (buffer, iter);
 | 
				
			||||||
 | 
					-      return FALSE;
 | 
				
			||||||
 | 
					-    }
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  _gtk_text_btree_get_iter_at_line_char (get_btree (buffer), iter, line_number, 0);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  end_line_iter = *iter;
 | 
				
			||||||
 | 
					-  if (!gtk_text_iter_ends_line (&end_line_iter))
 | 
				
			||||||
 | 
					-    gtk_text_iter_forward_to_line_end (&end_line_iter);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  if (char_offset > gtk_text_iter_get_line_offset (&end_line_iter))
 | 
				
			||||||
 | 
					-    {
 | 
				
			||||||
 | 
					-      *iter = end_line_iter;
 | 
				
			||||||
 | 
					-      return FALSE;
 | 
				
			||||||
 | 
					-    }
 | 
				
			||||||
 | 
					+  g_return_if_fail (iter != NULL);
 | 
				
			||||||
 | 
					+  g_return_if_fail (GTK_IS_TEXT_BUFFER (buffer));
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-  gtk_text_iter_set_line_offset (iter, char_offset);
 | 
				
			||||||
 | 
					-  return TRUE;
 | 
				
			||||||
 | 
					+  _gtk_text_btree_get_iter_at_line_char (get_btree (buffer),
 | 
				
			||||||
 | 
					+                                         iter, line_number, char_offset);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 /**
 | 
				
			||||||
 | 
					@@ -2914,48 +2888,21 @@ gtk_text_buffer_get_iter_at_line_offset (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					  * @byte_index: byte index from start of line
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  * Obtains an iterator pointing to @byte_index within the given line.
 | 
				
			||||||
 | 
					- * @byte_index must be the start of a UTF-8 character. Note bytes, not
 | 
				
			||||||
 | 
					+ * @byte_index must be the start of a UTF-8 character, and must not be
 | 
				
			||||||
 | 
					+ * beyond the end of the line.  Note bytes, not
 | 
				
			||||||
 | 
					  * characters; UTF-8 may encode one character as multiple bytes.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Before the 3.20 version, it was not allowed to pass an invalid location.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Since the 3.20 version, if @line_number is greater than the number of lines
 | 
				
			||||||
 | 
					- * in the @buffer, the end iterator is returned. And if @byte_index is off the
 | 
				
			||||||
 | 
					- * end of the line, the iterator at the end of the line is returned.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Returns: whether the exact position has been found (since 3.20).
 | 
				
			||||||
 | 
					  **/
 | 
				
			||||||
 | 
					-gboolean
 | 
				
			||||||
 | 
					+void
 | 
				
			||||||
 | 
					 gtk_text_buffer_get_iter_at_line_index  (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					                                          GtkTextIter   *iter,
 | 
				
			||||||
 | 
					                                          gint           line_number,
 | 
				
			||||||
 | 
					                                          gint           byte_index)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					-  GtkTextIter end_line_iter;
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_return_val_if_fail (iter != NULL, FALSE);
 | 
				
			||||||
 | 
					-  g_return_val_if_fail (GTK_IS_TEXT_BUFFER (buffer), FALSE);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  if (line_number >= gtk_text_buffer_get_line_count (buffer))
 | 
				
			||||||
 | 
					-    {
 | 
				
			||||||
 | 
					-      gtk_text_buffer_get_end_iter (buffer, iter);
 | 
				
			||||||
 | 
					-      return FALSE;
 | 
				
			||||||
 | 
					-    }
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_line (buffer, iter, line_number);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  end_line_iter = *iter;
 | 
				
			||||||
 | 
					-  if (!gtk_text_iter_ends_line (&end_line_iter))
 | 
				
			||||||
 | 
					-    gtk_text_iter_forward_to_line_end (&end_line_iter);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  if (byte_index > gtk_text_iter_get_line_index (&end_line_iter))
 | 
				
			||||||
 | 
					-    {
 | 
				
			||||||
 | 
					-      *iter = end_line_iter;
 | 
				
			||||||
 | 
					-      return FALSE;
 | 
				
			||||||
 | 
					-    }
 | 
				
			||||||
 | 
					+  g_return_if_fail (iter != NULL);
 | 
				
			||||||
 | 
					+  g_return_if_fail (GTK_IS_TEXT_BUFFER (buffer));
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-  gtk_text_iter_set_line_index (iter, byte_index);
 | 
				
			||||||
 | 
					-  return TRUE;
 | 
				
			||||||
 | 
					+  _gtk_text_btree_get_iter_at_line_byte (get_btree (buffer),
 | 
				
			||||||
 | 
					+                                         iter, line_number, byte_index);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 /**
 | 
				
			||||||
 | 
					@@ -2966,18 +2913,16 @@ gtk_text_buffer_get_iter_at_line_index  (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					  *
 | 
				
			||||||
 | 
					  * Initializes @iter to the start of the given line. If @line_number is greater
 | 
				
			||||||
 | 
					  * than the number of lines in the @buffer, the end iterator is returned.
 | 
				
			||||||
 | 
					- *
 | 
				
			||||||
 | 
					- * Returns: whether the exact position has been found (since 3.20).
 | 
				
			||||||
 | 
					  **/
 | 
				
			||||||
 | 
					-gboolean
 | 
				
			||||||
 | 
					+void
 | 
				
			||||||
 | 
					 gtk_text_buffer_get_iter_at_line (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					                                   GtkTextIter   *iter,
 | 
				
			||||||
 | 
					                                   gint           line_number)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					-  g_return_val_if_fail (iter != NULL, FALSE);
 | 
				
			||||||
 | 
					-  g_return_val_if_fail (GTK_IS_TEXT_BUFFER (buffer), FALSE);
 | 
				
			||||||
 | 
					+  g_return_if_fail (iter != NULL);
 | 
				
			||||||
 | 
					+  g_return_if_fail (GTK_IS_TEXT_BUFFER (buffer));
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-  return gtk_text_buffer_get_iter_at_line_offset (buffer, iter, line_number, 0);
 | 
				
			||||||
 | 
					+  gtk_text_buffer_get_iter_at_line_offset (buffer, iter, line_number, 0);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 /**
 | 
				
			||||||
 | 
					diff --git a/gtk/gtktextbuffer.h b/gtk/gtktextbuffer.h
 | 
				
			||||||
 | 
					index 8894542..9227be8 100644
 | 
				
			||||||
 | 
					--- a/gtk/gtktextbuffer.h
 | 
				
			||||||
 | 
					+++ b/gtk/gtktextbuffer.h
 | 
				
			||||||
 | 
					@@ -373,23 +373,23 @@ GtkTextTag    *gtk_text_buffer_create_tag (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					  * iterator around using the GtkTextIter operators
 | 
				
			||||||
 | 
					  */
 | 
				
			||||||
 | 
					 GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					-gboolean gtk_text_buffer_get_iter_at_line_offset (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					-                                                  GtkTextIter   *iter,
 | 
				
			||||||
 | 
					-                                                  gint           line_number,
 | 
				
			||||||
 | 
					-                                                  gint           char_offset);
 | 
				
			||||||
 | 
					-GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					-gboolean gtk_text_buffer_get_iter_at_line_index  (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					-                                                  GtkTextIter   *iter,
 | 
				
			||||||
 | 
					-                                                  gint           line_number,
 | 
				
			||||||
 | 
					-                                                  gint           byte_index);
 | 
				
			||||||
 | 
					-GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					-void gtk_text_buffer_get_iter_at_offset          (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					-                                                  GtkTextIter   *iter,
 | 
				
			||||||
 | 
					-                                                  gint           char_offset);
 | 
				
			||||||
 | 
					-GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					-gboolean gtk_text_buffer_get_iter_at_line        (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					-                                                  GtkTextIter   *iter,
 | 
				
			||||||
 | 
					-                                                  gint           line_number);
 | 
				
			||||||
 | 
					+void gtk_text_buffer_get_iter_at_line_offset (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					+                                              GtkTextIter   *iter,
 | 
				
			||||||
 | 
					+                                              gint           line_number,
 | 
				
			||||||
 | 
					+                                              gint           char_offset);
 | 
				
			||||||
 | 
					+GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					+void gtk_text_buffer_get_iter_at_line_index  (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					+                                              GtkTextIter   *iter,
 | 
				
			||||||
 | 
					+                                              gint           line_number,
 | 
				
			||||||
 | 
					+                                              gint           byte_index);
 | 
				
			||||||
 | 
					+GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					+void gtk_text_buffer_get_iter_at_offset      (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					+                                              GtkTextIter   *iter,
 | 
				
			||||||
 | 
					+                                              gint           char_offset);
 | 
				
			||||||
 | 
					+GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					+void gtk_text_buffer_get_iter_at_line        (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					+                                              GtkTextIter   *iter,
 | 
				
			||||||
 | 
					+                                              gint           line_number);
 | 
				
			||||||
 | 
					 GDK_AVAILABLE_IN_ALL
 | 
				
			||||||
 | 
					 void gtk_text_buffer_get_start_iter          (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					                                               GtkTextIter   *iter);
 | 
				
			||||||
 | 
					diff --git a/testsuite/gtk/textbuffer.c b/testsuite/gtk/textbuffer.c
 | 
				
			||||||
 | 
					index 37243dc..6e16ff2 100644
 | 
				
			||||||
 | 
					--- a/testsuite/gtk/textbuffer.c
 | 
				
			||||||
 | 
					+++ b/testsuite/gtk/textbuffer.c
 | 
				
			||||||
 | 
					@@ -1434,128 +1434,6 @@ test_clipboard (void)
 | 
				
			||||||
 | 
					   g_object_unref (buffer);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-static void
 | 
				
			||||||
 | 
					-test_get_iter (void)
 | 
				
			||||||
 | 
					-{
 | 
				
			||||||
 | 
					-  GtkTextBuffer *buffer;
 | 
				
			||||||
 | 
					-  GtkTextIter iter;
 | 
				
			||||||
 | 
					-  gint offset;
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  buffer = gtk_text_buffer_new (NULL);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  /* ß takes 2 bytes in UTF-8 */
 | 
				
			||||||
 | 
					-  gtk_text_buffer_set_text (buffer, "ab\nßd\r\nef", -1);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  /* Test get_iter_at_line() */
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line (buffer, &iter, 0));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_start (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line (buffer, &iter, 1));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 3);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line (buffer, &iter, 2));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 7);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line (buffer, &iter, 3));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  /* Test get_iter_at_line_offset() */
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 0, 0));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_start (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 0, 1));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 1);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 0, 2));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 2);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 0, 3));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 2);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 1, 1));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 4);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 2, 1));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 8);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 2, 2));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 2, 3));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line_offset (buffer, &iter, 3, 1));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  /* Test get_iter_at_line_index() */
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 0, 0));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_start (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 0, 1));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 1);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 0, 2));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 2);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 0, 3));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 2);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 1, 0));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 3);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 1, 2));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 4);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 1, 3));
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 5);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 2, 2));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 2, 3));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_buffer_get_iter_at_line_index (buffer, &iter, 3, 1));
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  /* Test get_iter_at_offset() */
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_offset (buffer, &iter, 0);
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_start (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_offset (buffer, &iter, 1);
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 1);
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_offset (buffer, &iter, 8);
 | 
				
			||||||
 | 
					-  offset = gtk_text_iter_get_offset (&iter);
 | 
				
			||||||
 | 
					-  g_assert_cmpint (offset, ==, 8);
 | 
				
			||||||
 | 
					-  g_assert (!gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_offset (buffer, &iter, 9);
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_offset (buffer, &iter, 100);
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_offset (buffer, &iter, -1);
 | 
				
			||||||
 | 
					-  g_assert (gtk_text_iter_is_end (&iter));
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					-  g_object_unref (buffer);
 | 
				
			||||||
 | 
					-}
 | 
				
			||||||
 | 
					-
 | 
				
			||||||
 | 
					 int
 | 
				
			||||||
 | 
					 main (int argc, char** argv)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					@@ -1574,7 +1452,6 @@ main (int argc, char** argv)
 | 
				
			||||||
 | 
					   g_test_add_func ("/TextBuffer/Fill and Empty", test_fill_empty);
 | 
				
			||||||
 | 
					   g_test_add_func ("/TextBuffer/Tag", test_tag);
 | 
				
			||||||
 | 
					   g_test_add_func ("/TextBuffer/Clipboard", test_clipboard);
 | 
				
			||||||
 | 
					-  g_test_add_func ("/TextBuffer/Get iter", test_get_iter);
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					   return g_test_run();
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.6.2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										72
									
								
								debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,72 @@
 | 
				
			|||||||
 | 
					From 511bd4fee7fa0c2abf394681713c6bce93b99b02 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: =?UTF-8?q?S=C3=A9bastien=20Wilmet?= <swilmet@gnome.org>
 | 
				
			||||||
 | 
					Date: Thu, 12 Nov 2015 17:23:16 +0100
 | 
				
			||||||
 | 
					Subject: [PATCH 2/2] Revert "inspector: remove
 | 
				
			||||||
 | 
					 gtk_text_buffer_get_iter_at_line_index() workaround"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					This reverts commit 1536710dbac58f0d46a6c308370e1e3864bf42e0.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Because of the revert at
 | 
				
			||||||
 | 
					commit 0dc66f5125196ee10c7e851b75f16e9f5669eb49.
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 gtk/inspector/css-editor.c | 37 +++++++++++++++++++++++++++++--------
 | 
				
			||||||
 | 
					 1 file changed, 29 insertions(+), 8 deletions(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/gtk/inspector/css-editor.c b/gtk/inspector/css-editor.c
 | 
				
			||||||
 | 
					index b11329d..776b3ac 100644
 | 
				
			||||||
 | 
					--- a/gtk/inspector/css-editor.c
 | 
				
			||||||
 | 
					+++ b/gtk/inspector/css-editor.c
 | 
				
			||||||
 | 
					@@ -249,6 +249,27 @@ text_changed (GtkTextBuffer         *buffer,
 | 
				
			||||||
 | 
					   ce->priv->timeout = g_timeout_add (100, update_timeout, ce); 
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+/* Safe version of gtk_text_buffer_get_iter_at_line_index(). */
 | 
				
			||||||
 | 
					+static void
 | 
				
			||||||
 | 
					+safe_get_iter_at_line_index (GtkTextBuffer *buffer,
 | 
				
			||||||
 | 
					+                             GtkTextIter   *iter,
 | 
				
			||||||
 | 
					+                             gint           line_number,
 | 
				
			||||||
 | 
					+                             gint           byte_index)
 | 
				
			||||||
 | 
					+{
 | 
				
			||||||
 | 
					+  if (line_number >= gtk_text_buffer_get_line_count (buffer))
 | 
				
			||||||
 | 
					+    {
 | 
				
			||||||
 | 
					+      gtk_text_buffer_get_end_iter (buffer, iter);
 | 
				
			||||||
 | 
					+      return;
 | 
				
			||||||
 | 
					+    }
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+  gtk_text_buffer_get_iter_at_line (buffer, iter, line_number);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+  if (byte_index < gtk_text_iter_get_bytes_in_line (iter))
 | 
				
			||||||
 | 
					+    gtk_text_iter_set_line_index (iter, byte_index);
 | 
				
			||||||
 | 
					+  else
 | 
				
			||||||
 | 
					+    gtk_text_iter_forward_to_line_end (iter);
 | 
				
			||||||
 | 
					+}
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 static void
 | 
				
			||||||
 | 
					 show_parsing_error (GtkCssProvider        *provider,
 | 
				
			||||||
 | 
					                     GtkCssSection         *section,
 | 
				
			||||||
 | 
					@@ -259,14 +280,14 @@ show_parsing_error (GtkCssProvider        *provider,
 | 
				
			||||||
 | 
					   const char *tag_name;
 | 
				
			||||||
 | 
					   GtkTextBuffer *buffer = GTK_TEXT_BUFFER (ce->priv->text);
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_line_index (buffer,
 | 
				
			||||||
 | 
					-                                          &start,
 | 
				
			||||||
 | 
					-                                          gtk_css_section_get_start_line (section),
 | 
				
			||||||
 | 
					-                                          gtk_css_section_get_start_position (section));
 | 
				
			||||||
 | 
					-  gtk_text_buffer_get_iter_at_line_index (buffer,
 | 
				
			||||||
 | 
					-                                          &end,
 | 
				
			||||||
 | 
					-                                          gtk_css_section_get_end_line (section),
 | 
				
			||||||
 | 
					-                                          gtk_css_section_get_end_position (section));
 | 
				
			||||||
 | 
					+  safe_get_iter_at_line_index (buffer,
 | 
				
			||||||
 | 
					+                               &start,
 | 
				
			||||||
 | 
					+                               gtk_css_section_get_start_line (section),
 | 
				
			||||||
 | 
					+                               gtk_css_section_get_start_position (section));
 | 
				
			||||||
 | 
					+  safe_get_iter_at_line_index (buffer,
 | 
				
			||||||
 | 
					+                               &end,
 | 
				
			||||||
 | 
					+                               gtk_css_section_get_end_line (section),
 | 
				
			||||||
 | 
					+                               gtk_css_section_get_end_position (section));
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					   if (g_error_matches (error, GTK_CSS_PROVIDER_ERROR, GTK_CSS_PROVIDER_ERROR_DEPRECATED))
 | 
				
			||||||
 | 
					     tag_name = "warning";
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.6.2
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										2
									
								
								debian/patches/series
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/patches/series
									
									
									
									
										vendored
									
									
								
							@ -1,3 +1,5 @@
 | 
				
			|||||||
 | 
					001-Revert-textbuffer-nicer-get_iter-functions.patch
 | 
				
			||||||
 | 
					002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch
 | 
				
			||||||
015_default-fallback-icon-theme.patch
 | 
					015_default-fallback-icon-theme.patch
 | 
				
			||||||
016_no_offscreen_widgets_grabbing.patch
 | 
					016_no_offscreen_widgets_grabbing.patch
 | 
				
			||||||
017_no_offscreen_device_grabbing.patch
 | 
					017_no_offscreen_device_grabbing.patch
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user