Commit a8c2d4b5 authored by Vincent Povirk's avatar Vincent Povirk Committed by Alexandre Julliard

shell32: Fix an uninitialized memory access in SHGetFileInfoW.

If we are passed SHGFI_PIDL, szFullPath is not initialized. If we're passed the flags PIDL, USEFILEATTRIBUTES, and an icon flag, we will try to use the uninitialized filename to get the icon. Since the test claims that the function should return an icon in this case, and we cannot always convert a pidl to a path, we should just use the pidl.
parent 3ac34f74
...@@ -565,7 +565,7 @@ DWORD_PTR WINAPI SHGetFileInfoW(LPCWSTR path,DWORD dwFileAttributes, ...@@ -565,7 +565,7 @@ DWORD_PTR WINAPI SHGetFileInfoW(LPCWSTR path,DWORD dwFileAttributes,
/* get icon index (or load icon)*/ /* get icon index (or load icon)*/
if (SUCCEEDED(hr) && (flags & (SHGFI_ICON | SHGFI_SYSICONINDEX))) if (SUCCEEDED(hr) && (flags & (SHGFI_ICON | SHGFI_SYSICONINDEX)))
{ {
if (flags & SHGFI_USEFILEATTRIBUTES) if (flags & SHGFI_USEFILEATTRIBUTES && !(flags & SHGFI_PIDL))
{ {
WCHAR sTemp [MAX_PATH]; WCHAR sTemp [MAX_PATH];
WCHAR * szExt; WCHAR * szExt;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment