diff options
Diffstat (limited to 'gtk/gtkoptionmenu.c')
-rw-r--r-- | gtk/gtkoptionmenu.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gtk/gtkoptionmenu.c b/gtk/gtkoptionmenu.c index 8e7856ce70..458a8fe431 100644 --- a/gtk/gtkoptionmenu.c +++ b/gtk/gtkoptionmenu.c @@ -848,10 +848,15 @@ gtk_option_menu_calc_size (GtkOptionMenu *option_menu) if (GTK_WIDGET_VISIBLE (child)) { - gtk_widget_size_request (child, &child_requisition); + GtkWidget *inner = GTK_BIN (child)->child; - option_menu->width = MAX (option_menu->width, child_requisition.width); - option_menu->height = MAX (option_menu->height, child_requisition.height); + if (inner) + { + gtk_widget_size_request (inner, &child_requisition); + + option_menu->width = MAX (option_menu->width, child_requisition.width); + option_menu->height = MAX (option_menu->height, child_requisition.height); + } } } } |