r47005 - in /desktop/unstable/gtk+3.0/debian: changelog patches/001-Revert-textbuffer-nicer-get_iter-functions.patch patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch patches/series
biebl at users.alioth.debian.org
biebl at users.alioth.debian.org
Thu Nov 12 17:50:52 UTC 2015
Author: biebl
Date: Thu Nov 12 17:50:52 2015
New Revision: 47005
URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=47005
Log:
Revert "textbuffer: nicer get_iter functions" and related commits since
this broke the bindings API. (Closes: #804798)
Added:
desktop/unstable/gtk+3.0/debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch
desktop/unstable/gtk+3.0/debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch
Modified:
desktop/unstable/gtk+3.0/debian/changelog
desktop/unstable/gtk+3.0/debian/patches/series
Modified: desktop/unstable/gtk+3.0/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/changelog?rev=47005&op=diff
==============================================================================
--- desktop/unstable/gtk+3.0/debian/changelog [utf-8] (original)
+++ desktop/unstable/gtk+3.0/debian/changelog [utf-8] Thu Nov 12 17:50:52 2015
@@ -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 at debian.org> Thu, 12 Nov 2015 18:48:41 +0100
+
gtk+3.0 (3.18.3-2) unstable; urgency=medium
* The placesview API was not supposed to be public, so those symbols were
Added: desktop/unstable/gtk+3.0/debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch?rev=47005&op=file
==============================================================================
--- desktop/unstable/gtk+3.0/debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch (added)
+++ desktop/unstable/gtk+3.0/debian/patches/001-Revert-textbuffer-nicer-get_iter-functions.patch [utf-8] Thu Nov 12 17:50:52 2015
@@ -0,0 +1,344 @@
+From 0dc66f5125196ee10c7e851b75f16e9f5669eb49 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen at 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
+
Added: desktop/unstable/gtk+3.0/debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch?rev=47005&op=file
==============================================================================
--- desktop/unstable/gtk+3.0/debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch (added)
+++ desktop/unstable/gtk+3.0/debian/patches/002-Revert-inspector-remove-gtk_text_buffer_get_iter_at_.patch [utf-8] Thu Nov 12 17:50:52 2015
@@ -0,0 +1,72 @@
+From 511bd4fee7fa0c2abf394681713c6bce93b99b02 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?S=C3=A9bastien=20Wilmet?= <swilmet at 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
+
Modified: desktop/unstable/gtk+3.0/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/unstable/gtk%2B3.0/debian/patches/series?rev=47005&op=diff
==============================================================================
--- desktop/unstable/gtk+3.0/debian/patches/series [utf-8] (original)
+++ desktop/unstable/gtk+3.0/debian/patches/series [utf-8] Thu Nov 12 17:50:52 2015
@@ -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
016_no_offscreen_widgets_grabbing.patch
017_no_offscreen_device_grabbing.patch
More information about the pkg-gnome-commits
mailing list