diff --git a/ChangeLog b/ChangeLog index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index c61b6b6dcf..90618e0817 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +Wed Jan 31 20:33:35 2001 Owen Taylor + + * gtk/gtkentry.c (gtk_entry_set_selection): Check bounds + when setting selection. (#7302) + Thu Feb 1 02:26:18 2001 Tim Janik * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): avoid regeneration diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c index 25e9cef7c9..ea910a2aca 100644 --- a/gtk/gtkentry.c +++ b/gtk/gtkentry.c @@ -2213,14 +2213,16 @@ gtk_entry_set_selection (GtkEditable *editable, gint start, gint end) { + gint length = GTK_ENTRY (editable)->text_length; + g_return_if_fail (editable != NULL); g_return_if_fail (GTK_IS_ENTRY (editable)); if (end < 0) - end = GTK_ENTRY (editable)->text_length; + end = length; - editable->selection_start_pos = start; - editable->selection_end_pos = end; + editable->selection_start_pos = CLAMP (start, 0, length); + editable->selection_end_pos = MIN (end, length); gtk_entry_queue_draw (GTK_ENTRY (editable)); }