diff --git a/gtk/gtksizerequest.c b/gtk/gtksizerequest.c
index a5a3103..b5a6761 100644
--- a/gtk/gtksizerequest.c
+++ b/gtk/gtksizerequest.c
@@ -211,17 +211,14 @@ compute_size_for_orientation (GtkWidget         *widget,
 
   if (!found_in_cache)
     {
-      GtkRequisition requisition = { 0, 0 };
       gint min_size = 0, nat_size = 0;
-      gint requisition_size;
-
-      /* Unconditional size request runs but is often unhandled. */
-      do_size_request (widget, &requisition);
+      
+      /* Make sure style is applied before requesting
+       */
+      gtk_widget_ensure_style (widget);
 
       if (orientation == GTK_SIZE_GROUP_HORIZONTAL)
         {
-          requisition_size = requisition.width;
-
           if (for_size < 0)
             {
 	      push_recursion_check (widget, orientation, for_size);
@@ -252,8 +249,6 @@ compute_size_for_orientation (GtkWidget         *widget,
         }
       else
         {
-          requisition_size = requisition.height;
-
           if (for_size < 0)
             {
 	      push_recursion_check (widget, orientation, for_size);
@@ -289,12 +284,6 @@ compute_size_for_orientation (GtkWidget         *widget,
                      G_OBJECT_TYPE_NAME (widget), widget, min_size, nat_size);
         }
 
-      /* Support for dangling "size-request" signal implementations on
-       * legacy widgets
-       */
-      min_size = MAX (min_size, requisition_size);
-      nat_size = MAX (nat_size, requisition_size);
-
       cached_size->minimum_size = min_size;
       cached_size->natural_size = nat_size;
       cached_size->for_size     = for_size;
@@ -325,12 +314,12 @@ compute_size_for_orientation (GtkWidget         *widget,
         }
       else if (adjusted_min > adjusted_natural)
         {
+          /* don't use the adjustment */
           g_warning ("%s %p adjusted size %s min %d natural %d original min %d natural %d has min greater than natural",
                      G_OBJECT_TYPE_NAME (widget), widget,
                      orientation == GTK_SIZE_GROUP_VERTICAL ? "vertical" : "horizontal",
                      adjusted_min, adjusted_natural,
                      cached_size->minimum_size, cached_size->natural_size);
-          /* don't use the adjustment */
         }
       else
         {
