Alexandre Julliard : winetest: Refuse to run if we cannot create a window.
Alexandre Julliard
julliard at winehq.org
Fri Mar 5 09:42:55 CST 2010
Module: wine
Branch: master
Commit: f47bcc22fcfc2bbc16f3f41886a55c2c9d4a9716
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f47bcc22fcfc2bbc16f3f41886a55c2c9d4a9716
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Mar 5 13:10:16 2010 +0100
winetest: Refuse to run if we cannot create a window.
---
programs/winetest/gui.c | 2 +-
programs/winetest/main.c | 17 ++++++++++++++++-
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/programs/winetest/gui.c b/programs/winetest/gui.c
index 7a7b1e0..f13cc18 100644
--- a/programs/winetest/gui.c
+++ b/programs/winetest/gui.c
@@ -473,7 +473,7 @@ DlgThreadProc (LPVOID param)
NULL, DlgProc);
switch (ret) {
case 0:
- report (R_WARNING, "Invalid parent handle");
+ report (R_FATAL, "Cannot display dialog");
break;
case 1:
report (R_WARNING, "DialogBox failed: %d",
diff --git a/programs/winetest/main.c b/programs/winetest/main.c
index e0b9ced..3eabf5f 100644
--- a/programs/winetest/main.c
+++ b/programs/winetest/main.c
@@ -145,6 +145,18 @@ static int check_mount_mgr(void)
return TRUE;
}
+static int check_display_driver(void)
+{
+ if (running_under_wine())
+ {
+ HWND hwnd = CreateWindowA( "STATIC", "", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, CW_USEDEFAULT, 0,
+ 0, 0, GetModuleHandleA(0), 0 );
+ if (!hwnd) return FALSE;
+ DestroyWindow( hwnd );
+ }
+ return TRUE;
+}
+
static int running_on_visible_desktop (void)
{
HWND desktop;
@@ -1052,7 +1064,10 @@ int main( int argc, char *argv[] )
report (R_FATAL, "Tests must be run on a visible desktop");
if (!check_mount_mgr())
- report (R_FATAL, "Mount manager not running, most likely your WINEPREFIX wasn't created correctly");
+ report (R_FATAL, "Mount manager not running, most likely your WINEPREFIX wasn't created correctly.");
+
+ if (!check_display_driver())
+ report (R_FATAL, "Unable to create a window, the display driver is not working.");
SetConsoleCtrlHandler(ctrl_handler, TRUE);
More information about the wine-cvs
mailing list