shell32: Avoid a uninitialized write of the struct APPBARDATA (valgrind)

Bruno Jesus 00cpxxx at gmail.com
Mon Jun 16 09:37:10 CDT 2014


Fixes bug https://bugs.winehq.org/show_bug.cgi?id=36636
-------------- next part --------------
diff --git a/dlls/shell32/appbar.c b/dlls/shell32/appbar.c
index c5bd3d4..1840518 100644
--- a/dlls/shell32/appbar.c
+++ b/dlls/shell32/appbar.c
@@ -111,6 +111,7 @@ UINT_PTR WINAPI SHAppBarMessage(DWORD msg, PAPPBARDATA data)
         return FALSE;
     }
 
+    memset(&command.abd, 0, sizeof(command.abd));
     command.abd.hWnd = HandleToLong( data->hWnd );
     command.abd.uCallbackMessage = data->uCallbackMessage;
     command.abd.uEdge = data->uEdge;
diff --git a/dlls/shell32/tests/appbar.c b/dlls/shell32/tests/appbar.c
index 7675493..b77f6c1 100644
--- a/dlls/shell32/tests/appbar.c
+++ b/dlls/shell32/tests/appbar.c
@@ -65,6 +65,7 @@ static void testwindow_setpos(HWND hwnd)
         return;
     }
 
+    memset(&abd, 0, sizeof(abd));
     abd.cbSize = sizeof(abd);
     abd.hWnd = hwnd;
     abd.uEdge = info->edge;
@@ -216,6 +217,7 @@ static void test_setpos(void)
         NULL, NULL, NULL, NULL);
     ok(windows[0].hwnd != NULL, "couldn't create window\n");
     do_events();
+    memset(&abd, 0, sizeof(abd));
     abd.cbSize = sizeof(abd);
     abd.hWnd = windows[0].hwnd;
     abd.uCallbackMessage = MSG_APPBAR;


More information about the wine-patches mailing list