summaryrefslogtreecommitdiff
path: root/gtk/gtkrange.c
diff options
context:
space:
mode:
Diffstat (limited to 'gtk/gtkrange.c')
-rw-r--r--gtk/gtkrange.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk/gtkrange.c b/gtk/gtkrange.c
index 0c1b313b5a..ce4e5e4282 100644
--- a/gtk/gtkrange.c
+++ b/gtk/gtkrange.c
@@ -990,6 +990,9 @@ gtk_range_set_range (GtkRange *range,
value = MIN (value, MAX (range->adjustment->lower,
range->layout->fill_level));
+ value = CLAMP (value, range->adjustment->lower,
+ (range->adjustment->upper - range->adjustment->page_size));
+
gtk_adjustment_set_value (range->adjustment, value);
gtk_adjustment_changed (range->adjustment);
}
@@ -1014,6 +1017,9 @@ gtk_range_set_value (GtkRange *range,
value = MIN (value, MAX (range->adjustment->lower,
range->layout->fill_level));
+ value = CLAMP (value, range->adjustment->lower,
+ (range->adjustment->upper - range->adjustment->page_size));
+
gtk_adjustment_set_value (range->adjustment, value);
}