From 653d57a22a6462a65fbb183cfba25f76e7672a85 Mon Sep 17 00:00:00 2001 From: Marcus Meissner Date: Fri, 23 Jun 2000 16:50:24 +0000 Subject: [PATCH] Dump FourCC correctly, print conversion messages, add reference to ddraw in DDSurface::GetDDInterface. --- dlls/ddraw/dsurface/main.c | 2 ++ dlls/ddraw/helper.c | 10 ++++++++-- dlls/ddraw/x11.c | 7 ++++++- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/dlls/ddraw/dsurface/main.c b/dlls/ddraw/dsurface/main.c index 5456115153f..654bfd2db9f 100644 --- a/dlls/ddraw/dsurface/main.c +++ b/dlls/ddraw/dsurface/main.c @@ -1084,6 +1084,8 @@ HRESULT WINAPI IDirectDrawSurface4Impl_GetDDInterface( FIXME("(%p)->(%p),stub!\n", This, lplpDD); /* Not sure about that... */ + + IDirectDraw_AddRef((LPDIRECTDRAW)This->s.ddraw), *lplpDD = (void *) This->s.ddraw; return DD_OK; diff --git a/dlls/ddraw/helper.c b/dlls/ddraw/helper.c index eaf24c4c82c..aadf49122fe 100644 --- a/dlls/ddraw/helper.c +++ b/dlls/ddraw/helper.c @@ -221,8 +221,14 @@ void _dump_pixelformat(void *in) { DPRINTF("( "); _dump_pixelformat_flag(pf->dwFlags); - if (pf->dwFlags & DDPF_FOURCC) - DPRINTF(", dwFourCC : %ld", pf->dwFourCC); + if (pf->dwFlags & DDPF_FOURCC) { + DPRINTF(", dwFourCC : %c%c%c%c", + (pf->dwFourCC>>24)&0xff, + (pf->dwFourCC>>16)&0xff, + (pf->dwFourCC>> 8)&0xff, + pf->dwFourCC &0xff + ); + } if (pf->dwFlags & DDPF_RGB) { char *cmd; DPRINTF(", RGB bits: %ld, ", pf->u.dwRGBBitCount); diff --git a/dlls/ddraw/x11.c b/dlls/ddraw/x11.c index 6d835b3fa9e..117604c5cb6 100644 --- a/dlls/ddraw/x11.c +++ b/dlls/ddraw/x11.c @@ -71,7 +71,12 @@ static HRESULT X11_Create( LPDIRECTDRAW *lplpDD ) { /* At DirectDraw creation, the depth is the default depth */ depth = DefaultDepthOfScreen(X11DRV_GetXScreen()); - _common_depth_to_pixelformat(depth,(LPDIRECTDRAW)ddraw); + switch (_common_depth_to_pixelformat(depth,(LPDIRECTDRAW)ddraw)) { + case -2: ERR("no depth conversion mode for depth %d found\n",depth); break; + case -1: WARN("No conversion needed for depth %d.\n",depth); break; + case 0: MESSAGE("Conversion needed from %d.\n",depth); break; + } + ddraw->d.height = MONITOR_GetHeight(&MONITOR_PrimaryMonitor); ddraw->d.width = MONITOR_GetWidth(&MONITOR_PrimaryMonitor); #ifdef HAVE_LIBXXSHM