--- src/widgets/qpopupmenu.cpp
+++ src/widgets/qpopupmenu.cpp
@@ -1391,6 +1391,7 @@
     performDelayedChanges();
     updateSize(TRUE);
     QWidget::show();
+    updateSize();
     popupActive = -1;
     if(style().styleHint(QStyle::SH_PopupMenu_SubMenuPopupDelay, this))
 	d->mouseMoveBuffer = QRegion();