Module: wine Branch: master Commit: c4cc10a59513da02908ddf633df996f4f8e460e1 URL: http://source.winehq.org/git/wine.git/?a=commit;h=c4cc10a59513da02908ddf633d...
Author: H. Verbeet hverbeet@gmail.com Date: Mon Apr 16 21:19:12 2007 +0200
wined3d: Add a function for dumping FBO status codes.
---
dlls/wined3d/device.c | 2 +- dlls/wined3d/utils.c | 19 +++++++++++++++++++ dlls/wined3d/wined3d_private.h | 1 + 3 files changed, 21 insertions(+), 1 deletions(-)
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c index dd9d320..1820f53 100644 --- a/dlls/wined3d/device.c +++ b/dlls/wined3d/device.c @@ -5193,7 +5193,7 @@ static void check_fbo_status(IWineD3DDevice *iface) { status = GL_EXTCALL(glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT)); switch(status) { case GL_FRAMEBUFFER_COMPLETE_EXT: TRACE("FBO complete.\n"); break; - default: FIXME("FBO status %#x.\n", status); break; + default: FIXME("FBO status %s (%#x)\n", debug_fbostatus(status), status); break; } }
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c index 849eb38..dff91af 100644 --- a/dlls/wined3d/utils.c +++ b/dlls/wined3d/utils.c @@ -696,6 +696,25 @@ const char* debug_d3dpool(WINED3DPOOL Pool) { } }
+const char *debug_fbostatus(GLenum status) { + switch(status) { +#define FBOSTATUS_TO_STR(u) case u: return #u + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_COMPLETE_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_DUPLICATE_ATTACHMENT_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT); + FBOSTATUS_TO_STR(GL_FRAMEBUFFER_UNSUPPORTED_EXT); +#undef FBOSTATUS_TO_STR + default: + FIXME("Unrecognied FBO status 0x%08x\n", status); + return "unrecognized"; + } +} + /***************************************************************************** * Useful functions mapping GL <-> D3D values */ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h index 7aae5e5..9fb4343 100644 --- a/dlls/wined3d/wined3d_private.h +++ b/dlls/wined3d/wined3d_private.h @@ -1402,6 +1402,7 @@ const char* debug_d3dtexturefiltertype(WINED3DTEXTUREFILTERTYPE filter_type); const char* debug_d3dtexturestate(DWORD state); const char* debug_d3dtstype(WINED3DTRANSFORMSTATETYPE tstype); const char* debug_d3dpool(WINED3DPOOL pool); +const char *debug_fbostatus(GLenum status);
/* Routines for GL <-> D3D values */ GLenum StencilOp(DWORD op);