diff --git a/dlls/shell32/shell32_main.h b/dlls/shell32/shell32_main.h index 4b8c7cbf2ac..8cd131800d2 100644 --- a/dlls/shell32/shell32_main.h +++ b/dlls/shell32/shell32_main.h @@ -156,12 +156,6 @@ static inline BOOL SHELL_OsIsUnicode(void) return !(GetVersion() & 0x80000000); } -#define __SHFreeAndNil(ptr) \ - {\ - SHFree(*ptr); \ - *ptr = NULL; \ - }; - static inline WCHAR * __SHCloneStrAtoW(WCHAR ** target, const char * source) { int len = MultiByteToWideChar(CP_ACP, 0, source, -1, NULL, 0); diff --git a/dlls/shell32/shfldr_fs.c b/dlls/shell32/shfldr_fs.c index d8bcb4ceccc..2f49eb27064 100644 --- a/dlls/shell32/shfldr_fs.c +++ b/dlls/shell32/shfldr_fs.c @@ -1482,9 +1482,15 @@ IFSFldr_PersistFolder3_InitializeEx (IPersistFolder3 * iface, pdump (ppfti->pidlTargetFolder); if (This->pidlRoot) - __SHFreeAndNil (&This->pidlRoot); /* free the old */ + { + SHFree(This->pidlRoot); + This->pidlRoot = NULL; + } if (This->sPathTarget) - __SHFreeAndNil (&This->sPathTarget); + { + SHFree(This->sPathTarget); + This->sPathTarget = NULL; + } /* * Root path and pidl