diff --git a/src/MenuButton.c b/src/MenuButton.c
index face84c07d9e601aff71be1e054603905dfb289a..a6b93020c0db13edbc8e01e1e3e80d32b547b45c 100644
--- a/src/MenuButton.c
+++ b/src/MenuButton.c
@@ -211,7 +211,9 @@ PopupMenu(Widget w, XEvent *event _X_UNUSED, String *params _X_UNUSED, Cardinal
     int menu_x, menu_y, menu_width, menu_height, button_height;
     Position button_x, button_y;
 
-    temp = w;
+    if ((temp = w) == NULL)
+	return;
+
     while(temp != NULL) {
 	menu = XtNameToWidget(temp, mbw->menu_button.menu_name);
 	if (menu == NULL)