]> Pileus Git - ~andy/gtk/commitdiff
label: Fix an invariant leading to required > minimum
authorBenjamin Otte <otte@redhat.com>
Fri, 22 Apr 2011 00:51:52 +0000 (02:51 +0200)
committerBenjamin Otte <otte@redhat.com>
Fri, 22 Apr 2011 00:51:52 +0000 (02:51 +0200)
gtk/gtklabel.c

index 3f837459115d0c7fd7accd7679ab899ccb727eac..45531d8ae01d4800b05a8e4be321b1f0585fcfd8 100644 (file)
@@ -3568,6 +3568,11 @@ gtk_label_get_preferred_layout_size (GtkLabel *label,
       layout = gtk_label_get_measuring_layout (label, layout, 0, -1);
 
       pango_layout_get_extents (layout, NULL, required);
+
+      /* can happen when Pango decides to ellipsize text */
+      if (required->width > natural->width)
+        required->width = natural->width;
+
       required->x = required->y = 0;
       required->height = natural->height;
     }