Index: src/windows/main.cpp
===================================================================
--- src/windows/main.cpp	(revision 4541)
+++ src/windows/main.cpp	(working copy)
@@ -3942,7 +3946,7 @@
 		}
 
 		// don't pull down menu with Alt or F10 if it is a hotkey, unless no game is running
-		if(romloaded && ((wParam == VK_MENU || wParam == VK_F10) && (hitHotKey) && !GetAsyncKeyState(VK_F4)))
+		if(romloaded && ((wParam == VK_MENU || wParam == VK_F10) && (hitHotKey)))
 			return 0;
 
 		return 1;
@@ -4687,6 +4691,9 @@
 			//since the user has used a gamepad,
 			//send some fake input to keep the screensaver from running
 			PreventScreensaver();
+			//do not trigger twice on alt/f10 hotkeys
+			if(PurgeModifiers(wParam) == VK_MENU || PurgeModifiers(wParam) == VK_F10)
+				break;
 			goto DOKEYDOWN;
 	case WM_SYSKEYDOWN:
 DOKEYDOWN:
