Fix engine wrt the latest changes in evas. Add error messages

SVN revision: 34757
This commit is contained in:
doursse 2008-06-06 12:14:01 +00:00 committed by doursse
parent 6a1b1c5ef9
commit 4e78b97de8
4 changed files with 46 additions and 17 deletions

View File

@ -133,7 +133,7 @@ _tmp_out_alloc(Render_Engine *re)
Soft16_Image *im; Soft16_Image *im;
im = (Soft16_Image *) evas_cache_image_empty(evas_common_soft16_image_cache_get()); im = (Soft16_Image *) evas_cache_image_empty(evas_common_soft16_image_cache_get());
im->flags.have_alpha = 0; im->cache_entry.flags.alpha = 0;
evas_cache_image_surface_alloc(&im->cache_entry, w, h); evas_cache_image_surface_alloc(&im->cache_entry, w, h);

View File

@ -33,19 +33,31 @@ evas_software_wince_ddraw_init (HWND window)
priv->module = LoadLibrary(L"ddraw.dll"); priv->module = LoadLibrary(L"ddraw.dll");
if (!priv->module) if (!priv->module)
goto free_priv; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not load ddraw.dll\n");
goto free_priv;
}
lib_DirectDrawCreate = (fct_DirectDrawCreate)GetProcAddress(priv->module, L"DirectDrawCreate"); lib_DirectDrawCreate = (fct_DirectDrawCreate)GetProcAddress(priv->module, L"DirectDrawCreate");
if (!lib_DirectDrawCreate) if (!lib_DirectDrawCreate)
goto free_lib; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not initialize DirectDraw\n");
goto free_lib;
}
res = lib_DirectDrawCreate(NULL, (IUnknown**)&priv->object, NULL); res = lib_DirectDrawCreate(NULL, (IUnknown**)&priv->object, NULL);
if (FAILED(res)) if (FAILED(res))
goto free_lib; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not create DirectDraw object\n");
goto free_lib;
}
res = priv->object->SetCooperativeLevel(window, DDSCL_FULLSCREEN); res = priv->object->SetCooperativeLevel(window, DDSCL_FULLSCREEN);
if (FAILED(res)) if (FAILED(res))
goto release_object; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not set window to fullscreen\n");
goto release_object;
}
memset(&surface_desc, 0, sizeof(surface_desc)); memset(&surface_desc, 0, sizeof(surface_desc));
surface_desc.dwSize = sizeof(surface_desc); surface_desc.dwSize = sizeof(surface_desc);
@ -54,13 +66,19 @@ evas_software_wince_ddraw_init (HWND window)
res = priv->object->CreateSurface(&surface_desc, &priv->surface, NULL); res = priv->object->CreateSurface(&surface_desc, &priv->surface, NULL);
if (FAILED(res)) if (FAILED(res))
goto release_object; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not create surface\n");
goto release_object;
}
memset(&surface_desc, 0, sizeof(surface_desc)); memset(&surface_desc, 0, sizeof(surface_desc));
surface_desc.dwSize = sizeof(surface_desc); surface_desc.dwSize = sizeof(surface_desc);
res = priv->surface->Lock(0, &surface_desc, DDLOCK_WAITNOTBUSY, 0); res = priv->surface->Lock(0, &surface_desc, DDLOCK_WAITNOTBUSY, 0);
if (FAILED(res)) if (FAILED(res))
goto release_surface; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not lock surface\n");
goto release_surface;
}
priv->width = surface_desc.dwWidth; priv->width = surface_desc.dwWidth;
priv->height = surface_desc.dwHeight; priv->height = surface_desc.dwHeight;
@ -68,7 +86,10 @@ evas_software_wince_ddraw_init (HWND window)
res = priv->surface->Unlock(NULL); res = priv->surface->Unlock(NULL);
if (FAILED(res)) if (FAILED(res))
goto release_surface; {
fprintf (stderr, "[Evas] [Engine] [WinCE DDraw] Can not unlock surface\n");
goto release_surface;
}
return priv; return priv;

View File

@ -55,6 +55,7 @@ evas_software_wince_fb_init (HWND window)
dc = GetDC (window); dc = GetDC (window);
if (!dc) if (!dc)
{ {
fprintf (stderr, "[Evas] [Engine] [WinCE FB] Can not get DC\n");
free(priv); free(priv);
return NULL; return NULL;
} }
@ -75,6 +76,7 @@ evas_software_wince_fb_init (HWND window)
(char *) &gxInfo); (char *) &gxInfo);
if (result <= 0) if (result <= 0)
{ {
fprintf (stderr, "[Evas] [Engine] [WinCE FB] [Ipaq] ExtEscape() failed\n");
ReleaseDC(window, dc); ReleaseDC(window, dc);
free(priv); free(priv);
return NULL; return NULL;
@ -93,6 +95,7 @@ evas_software_wince_fb_init (HWND window)
(rfbi.wBPP != 16) || (rfbi.wBPP != 16) ||
(rfbi.wFormat != 1)) (rfbi.wFormat != 1))
{ {
fprintf (stderr, "[Evas] [Engine] [WinCE FB] ExtEscape() failed\n");
ReleaseDC(window, dc); ReleaseDC(window, dc);
free(priv); free(priv);
return NULL; return NULL;

View File

@ -106,10 +106,11 @@ evas_software_wince_gapi_init (HWND window)
if (!gapi_lib) if (!gapi_lib)
{ {
gapi_lib = LoadLibrary(L"gx.dll"); gapi_lib = LoadLibrary(L"gx.dll");
if (!gapi_lib) { if (!gapi_lib)
printf ("error : LoadLibrary\n"); {
goto free_priv; fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] Can not load gx.dll\n");
} goto free_priv;
}
} }
LINK(display_open, display_open, L"?GXOpenDisplay@@YAHPAUHWND__@@K@Z"); LINK(display_open, display_open, L"?GXOpenDisplay@@YAHPAUHWND__@@K@Z");
@ -128,13 +129,13 @@ evas_software_wince_gapi_init (HWND window)
!suspend || !suspend ||
!resume) !resume)
{ {
printf ("error : no valid symbols\n"); fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] Can not find valid symbols\n");
goto free_lib; goto free_lib;
} }
if (!display_open(window, GX_FULLSCREEN)) if (!display_open(window, GX_FULLSCREEN))
{ {
printf ("error : GXOpenDisplay\n"); fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] Can not open display\n");
goto free_lib; goto free_lib;
} }
@ -143,7 +144,7 @@ evas_software_wince_gapi_init (HWND window)
// verify pixel format // verify pixel format
if(!(prop.ffFormat & kfDirect565) || (prop.cBPP != 16)) if(!(prop.ffFormat & kfDirect565) || (prop.cBPP != 16))
{ {
printf ("error : GAPI format mismatch\n"); fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] display format mismatch\n");
goto close_display; goto close_display;
} }
@ -151,7 +152,7 @@ evas_software_wince_gapi_init (HWND window)
if ((GetSystemMetrics(SM_CXSCREEN) != (int)prop.cxWidth) || if ((GetSystemMetrics(SM_CXSCREEN) != (int)prop.cxWidth) ||
(GetSystemMetrics(SM_CYSCREEN) != (int)prop.cyHeight)) (GetSystemMetrics(SM_CYSCREEN) != (int)prop.cyHeight))
{ {
printf ("error : GAPI size mismatch\n"); fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] display size mismatch\n");
goto close_display; goto close_display;
} }
@ -217,13 +218,17 @@ v | |
dc = GetDC (window); dc = GetDC (window);
if (!dc) if (!dc)
goto close_display; {
fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] Can not get device\n");
goto close_display;
}
gxInfo.Version = 100; gxInfo.Version = 100;
result = ExtEscape(dc, GETGXINFO, 0, NULL, sizeof(gxInfo), result = ExtEscape(dc, GETGXINFO, 0, NULL, sizeof(gxInfo),
(char *) &gxInfo); (char *) &gxInfo);
if (result <= 0) if (result <= 0)
{ {
fprintf (stderr, "[Evas] [Engine] [WinCE GAPI] ExtEscape failed\n");
ReleaseDC(window, dc); ReleaseDC(window, dc);
goto close_display; goto close_display;
} }