diff options
author | Sébastien Wilmet <swilmet@gnome.org> | 2015-10-15 10:43:10 +0200 |
---|---|---|
committer | Sébastien Wilmet <swilmet@gnome.org> | 2015-10-16 08:43:27 +0200 |
commit | a9a1c00cc9255ee9a7f73695f69abe172cde7bfa (patch) | |
tree | f69926c9a3e9b8c5ab935df835dec427dca94b86 /gtk/gtktextbuffer.h | |
parent | a712d1fd76fcd4343cc567ee5ec1f5bf9a793d36 (diff) | |
download | gtk+-a9a1c00cc9255ee9a7f73695f69abe172cde7bfa.tar.gz |
textbuffer: nicer get_iter functions
Avoid crashes when passing an invalid location to a
gtk_text_buffer_get_iter_at_*() function.
A boolean is returned to know if @iter has been set to the exact
location.
Unit tests are added.
https://bugzilla.gnome.org/show_bug.cgi?id=735341
Diffstat (limited to 'gtk/gtktextbuffer.h')
-rw-r--r-- | gtk/gtktextbuffer.h | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/gtk/gtktextbuffer.h b/gtk/gtktextbuffer.h index 3183d3c391..ff5ba49d7b 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 -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); +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); GDK_AVAILABLE_IN_ALL void gtk_text_buffer_get_start_iter (GtkTextBuffer *buffer, GtkTextIter *iter); |