[PATCH] d3dx9_36: Avoid dereferencing null pointers in trace (spotted by Paul Vriens)

Christian Costa titan.costa at wanadoo.fr
Thu Mar 4 01:20:44 CST 2010


---

 dlls/d3dx9_36/shader.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)
-------------- next part --------------
diff --git a/dlls/d3dx9_36/shader.c b/dlls/d3dx9_36/shader.c
index 9acad32..e4de6b3 100644
--- a/dlls/d3dx9_36/shader.c
+++ b/dlls/d3dx9_36/shader.c
@@ -154,11 +154,13 @@ HRESULT WINAPI D3DXFindShaderComment(CONST DWORD* byte_code, DWORD fourcc, LPCVO
             /* Check if this is the comment we are looking for */
             if (*(ptr + 1) == fourcc)
             {
+                UINT ctab_size = (comment_size - 1) * sizeof(DWORD);
+                LPCVOID ctab_data = ptr + 2;
                 if (size)
-                    *size = (comment_size - 1) * sizeof(DWORD);
+                    *size = ctab_size;
                 if (data)
-                    *data = ptr + 2;
-                TRACE("Returning comment data at %p with size %d\n", *data, *size);
+                    *data = ctab_data;
+                TRACE("Returning comment data at %p with size %d\n", ctab_data, ctab_size);
                 return D3D_OK;
             }
             ptr += comment_size;


More information about the wine-patches mailing list