diff options
Diffstat (limited to 'src/gtkutil.c')
-rw-r--r-- | src/gtkutil.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/gtkutil.c b/src/gtkutil.c index f56e888e685..2492ce620bc 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c @@ -3318,14 +3318,12 @@ xg_store_widget_in_map (GtkWidget *w) if (id_to_widget.max_size == id_to_widget.used) { ptrdiff_t new_size; - ptrdiff_t lim = min (TYPE_MAXIMUM (Window), - min (PTRDIFF_MAX, SIZE_MAX) / sizeof (GtkWidget *)); - if (lim - ID_TO_WIDGET_INCR < id_to_widget.max_size) + if (TYPE_MAXIMUM (Window) - ID_TO_WIDGET_INCR < id_to_widget.max_size) memory_full (SIZE_MAX); new_size = id_to_widget.max_size + ID_TO_WIDGET_INCR; - id_to_widget.widgets = xrealloc (id_to_widget.widgets, - sizeof (GtkWidget *)*new_size); + id_to_widget.widgets = xnrealloc (id_to_widget.widgets, + new_size, sizeof (GtkWidget *)); for (i = id_to_widget.max_size; i < new_size; ++i) id_to_widget.widgets[i] = 0; |