From a87520036f7b9ca8a7292fc8fc53df1fd4ea6ecb Mon Sep 17 00:00:00 2001 From: Michael Stefaniuc Date: Wed, 10 May 2006 00:33:53 +0200 Subject: [PATCH] janitorial: Remove redundant NULL pointer checks before HeapFree'ing them. Some HeapFree's are hidden behind macros. Found by smatch. --- dlls/advapi32/registry.c | 8 ++++---- dlls/advapi32/security.c | 4 +--- dlls/avifil32/api.c | 7 ++----- dlls/avifil32/avifile.c | 3 +-- dlls/avifil32/editstream.c | 3 +-- dlls/ddraw/device_opengl.c | 2 +- dlls/ddraw/surface_main.c | 2 +- dlls/iphlpapi/iphlpapi_main.c | 3 +-- dlls/msacm32/internal.c | 2 +- dlls/mshtml/hlink.c | 3 +-- dlls/msvfw32/msvideo_main.c | 12 ++++-------- dlls/opengl32/wgl.c | 4 +--- dlls/opengl32/wgl_ext.c | 2 +- dlls/riched20/writer.c | 6 ++---- dlls/secur32/secur32.c | 5 ++--- dlls/secur32/tests/main.c | 9 +++------ dlls/secur32/thunks.c | 12 ++++-------- dlls/urlmon/umon.c | 6 ++---- dlls/wined3d/query.c | 4 +--- dlls/wininet/internet.c | 3 +-- dlls/wininet/urlcache.c | 1 - dlls/winmm/winealsa/audio.c | 13 ++++--------- dlls/winmm/wineesd/audio.c | 8 ++------ dlls/x11drv/xrender.c | 3 +-- programs/regedit/treeview.c | 3 +-- programs/wineboot/wineboot.c | 3 +-- programs/winecfg/audio.c | 7 ++----- 27 files changed, 46 insertions(+), 92 deletions(-) diff --git a/dlls/advapi32/registry.c b/dlls/advapi32/registry.c index a51e8e927da..f748b521243 100644 --- a/dlls/advapi32/registry.c +++ b/dlls/advapi32/registry.c @@ -1455,7 +1455,7 @@ LONG WINAPI RegGetValueW( HKEY hKey, LPCWSTR pszSubKey, LPCWSTR pszValue, (dwType == REG_EXPAND_SZ && !(dwFlags & RRF_NOEXPAND))) { do { - if (pvBuf) HeapFree(GetProcessHeap(), 0, pvBuf); + HeapFree(GetProcessHeap(), 0, pvBuf); pvBuf = HeapAlloc(GetProcessHeap(), 0, cbData); if (!pvBuf) @@ -1494,7 +1494,7 @@ LONG WINAPI RegGetValueW( HKEY hKey, LPCWSTR pszSubKey, LPCWSTR pszValue, CopyMemory(pvData, pvBuf, *pcbData); } - if (pvBuf) HeapFree(GetProcessHeap(), 0, pvBuf); + HeapFree(GetProcessHeap(), 0, pvBuf); } if (pszSubKey && pszSubKey[0]) @@ -1547,7 +1547,7 @@ LONG WINAPI RegGetValueA( HKEY hKey, LPCSTR pszSubKey, LPCSTR pszValue, (dwType == REG_EXPAND_SZ && !(dwFlags & RRF_NOEXPAND))) { do { - if (pvBuf) HeapFree(GetProcessHeap(), 0, pvBuf); + HeapFree(GetProcessHeap(), 0, pvBuf); pvBuf = HeapAlloc(GetProcessHeap(), 0, cbData); if (!pvBuf) @@ -1586,7 +1586,7 @@ LONG WINAPI RegGetValueA( HKEY hKey, LPCSTR pszSubKey, LPCSTR pszValue, CopyMemory(pvData, pvBuf, *pcbData); } - if (pvBuf) HeapFree(GetProcessHeap(), 0, pvBuf); + HeapFree(GetProcessHeap(), 0, pvBuf); } if (pszSubKey && pszSubKey[0]) diff --git a/dlls/advapi32/security.c b/dlls/advapi32/security.c index f5472a8215d..f61b38a1250 100644 --- a/dlls/advapi32/security.c +++ b/dlls/advapi32/security.c @@ -1841,9 +1841,7 @@ LookupAccountNameA( RtlFreeUnicodeString(&lpSystemW); RtlFreeUnicodeString(&lpAccountW); - - if (lpReferencedDomainNameW) - HeapFree(GetProcessHeap(), 0, lpReferencedDomainNameW); + HeapFree(GetProcessHeap(), 0, lpReferencedDomainNameW); return ret; } diff --git a/dlls/avifil32/api.c b/dlls/avifil32/api.c index 44bdf91683c..6f9ae03f8a4 100644 --- a/dlls/avifil32/api.c +++ b/dlls/avifil32/api.c @@ -1284,9 +1284,7 @@ static BOOL AVISaveOptionsFmtChoose(HWND hWnd) if (ret == S_OK) pOptions->dwFlags |= AVICOMPRESSF_VALID; - if (afmtc.pwfxEnum != NULL) - HeapFree(GetProcessHeap(), 0, afmtc.pwfxEnum); - + HeapFree(GetProcessHeap(), 0, afmtc.pwfxEnum); return (ret == S_OK ? TRUE : FALSE); } else { ERR(": unknown streamtype 0x%08lX\n", sInfo.fccType); @@ -2007,8 +2005,7 @@ HRESULT WINAPI AVISaveVW(LPCWSTR szFile, CLSID *pclsidHandler, } error: - if (lpBuffer != NULL) - HeapFree(GetProcessHeap(), 0, lpBuffer); + HeapFree(GetProcessHeap(), 0, lpBuffer); if (pfile != NULL) { for (curStream = 0; curStream < nStreams; curStream++) { if (pOutStreams[curStream] != NULL) diff --git a/dlls/avifil32/avifile.c b/dlls/avifil32/avifile.c index 8d0625fda10..7f52ac71e30 100644 --- a/dlls/avifil32/avifile.c +++ b/dlls/avifil32/avifile.c @@ -1964,8 +1964,7 @@ static HRESULT AVIFILE_LoadIndex(IAVIFileImpl *This, DWORD size, DWORD offset) pos, &bAbsolute); } - if (lp != NULL) - HeapFree(GetProcessHeap(), 0, lp); + HeapFree(GetProcessHeap(), 0, lp); /* checking ... */ for (n = 0; n < This->fInfo.dwStreams; n++) { diff --git a/dlls/avifil32/editstream.c b/dlls/avifil32/editstream.c index bd654a0aff1..b13ef22a754 100644 --- a/dlls/avifil32/editstream.c +++ b/dlls/avifil32/editstream.c @@ -340,8 +340,7 @@ static BOOL AVIFILE_FormatsEqual(PAVISTREAM avi1, PAVISTREAM avi2) } } - if (fmt2 != NULL) - HeapFree(GetProcessHeap(), 0, fmt2); + HeapFree(GetProcessHeap(), 0, fmt2); HeapFree(GetProcessHeap(), 0, fmt1); return status; diff --git a/dlls/ddraw/device_opengl.c b/dlls/ddraw/device_opengl.c index e2e62993154..dac38d3a639 100644 --- a/dlls/ddraw/device_opengl.c +++ b/dlls/ddraw/device_opengl.c @@ -3821,7 +3821,7 @@ static void d3ddevice_lock_update(IDirectDrawSurfaceImpl* This, LPCRECT pRect, D buffer_color, buffer_format, dst); if (current_width > buffer_width) { - if (buffer != NULL) HeapFree(GetProcessHeap(), 0, buffer); + HeapFree(GetProcessHeap(), 0, buffer); buffer_width = current_width; buffer = HeapAlloc(GetProcessHeap(), 0, buffer_width); } diff --git a/dlls/ddraw/surface_main.c b/dlls/ddraw/surface_main.c index ba113590fa5..9c2eb0b8282 100644 --- a/dlls/ddraw/surface_main.c +++ b/dlls/ddraw/surface_main.c @@ -110,7 +110,7 @@ static void Main_DirectDrawSurface_Destroy(IDirectDrawSurfaceImpl* This) } This->final_release(This); if (This->private != This+1) HeapFree(GetProcessHeap(), 0, This->private); - if (This->tex_private) HeapFree(GetProcessHeap(), 0, This->tex_private); + HeapFree(GetProcessHeap(), 0, This->tex_private); HeapFree(GetProcessHeap(), 0, This); } diff --git a/dlls/iphlpapi/iphlpapi_main.c b/dlls/iphlpapi/iphlpapi_main.c index 063e9f7f13d..3d7d5e0d0c5 100644 --- a/dlls/iphlpapi/iphlpapi_main.c +++ b/dlls/iphlpapi/iphlpapi_main.c @@ -755,8 +755,7 @@ DWORD WINAPI GetAdaptersInfo(PIP_ADAPTER_INFO pAdapterInfo, PULONG pOutBufLen) } else ret = ERROR_OUTOFMEMORY; - if (ipAddrTable) - HeapFree(GetProcessHeap(), 0, ipAddrTable); + HeapFree(GetProcessHeap(), 0, ipAddrTable); } } else diff --git a/dlls/msacm32/internal.c b/dlls/msacm32/internal.c index 78ecb14fe68..25a15046847 100644 --- a/dlls/msacm32/internal.c +++ b/dlls/msacm32/internal.c @@ -635,7 +635,7 @@ static void MSACM_ReorderDriversByPriority(void) errCleanUp: if (hPriorityKey != NULL) RegCloseKey(hPriorityKey); - if (driverList != NULL) HeapFree(MSACM_hHeap, 0, driverList); + HeapFree(MSACM_hHeap, 0, driverList); } /*********************************************************************** diff --git a/dlls/mshtml/hlink.c b/dlls/mshtml/hlink.c index 3016917aefb..636ae9e731c 100644 --- a/dlls/mshtml/hlink.c +++ b/dlls/mshtml/hlink.c @@ -211,8 +211,7 @@ static HRESULT WINAPI Hlink_SetMonikerReference(IHlink *iface, DWORD grfHLSETF, if(This->mon) IMoniker_Release(This->mon); - if(This->location) - HeapFree(GetProcessHeap(), 0, This->location); + HeapFree(GetProcessHeap(), 0, This->location); if(pimkTarget) IMoniker_AddRef(pimkTarget); diff --git a/dlls/msvfw32/msvideo_main.c b/dlls/msvfw32/msvideo_main.c index 647124d2f0c..8c89450d783 100644 --- a/dlls/msvfw32/msvideo_main.c +++ b/dlls/msvfw32/msvideo_main.c @@ -1437,14 +1437,10 @@ void VFWAPI ICSeqCompressFrameEnd(PCOMPVARS pc) TRACE("(%p)\n", pc); ret = ICSendMessage(pc->hic, ICM_COMPRESS_END, 0, 0); TRACE(" -- %lx", ret); - if (pc->lpbiIn) - HeapFree(GetProcessHeap(), 0, pc->lpbiIn); - if (pc->lpBitsPrev) - HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev); - if (pc->lpBitsOut) - HeapFree(GetProcessHeap(), 0, pc->lpBitsOut); - if (pc->lpState) - HeapFree(GetProcessHeap(), 0, pc->lpState); + HeapFree(GetProcessHeap(), 0, pc->lpbiIn); + HeapFree(GetProcessHeap(), 0, pc->lpBitsPrev); + HeapFree(GetProcessHeap(), 0, pc->lpBitsOut); + HeapFree(GetProcessHeap(), 0, pc->lpState); pc->lpbiIn = pc->lpBitsPrev = pc->lpBitsOut = pc->lpState = NULL; } diff --git a/dlls/opengl32/wgl.c b/dlls/opengl32/wgl.c index a9d0b27f586..6411b8ccb2a 100644 --- a/dlls/opengl32/wgl.c +++ b/dlls/opengl32/wgl.c @@ -1336,9 +1336,7 @@ static void process_detach(void) /* Do not leak memory... */ wgl_ext_finalize_extensions(); - if (NULL != internal_gl_extensions) { - HeapFree(GetProcessHeap(), 0, internal_gl_extensions); - } + HeapFree(GetProcessHeap(), 0, internal_gl_extensions); } /*********************************************************************** diff --git a/dlls/opengl32/wgl_ext.c b/dlls/opengl32/wgl_ext.c index 624a82c7d94..f9ad4637355 100644 --- a/dlls/opengl32/wgl_ext.c +++ b/dlls/opengl32/wgl_ext.c @@ -1078,7 +1078,7 @@ HPBUFFERARB WINAPI wglCreatePbufferARB(HDC hdc, int iPixelFormat, int iWidth, in create_failed: if (NULL != cfgs) XFree(cfgs); - if (NULL != object) HeapFree(GetProcessHeap(), 0, object); + HeapFree(GetProcessHeap(), 0, object); TRACE("->(FAILED)\n"); return (HPBUFFERARB) NULL; } diff --git a/dlls/riched20/writer.c b/dlls/riched20/writer.c index 9814ad19504..8e2976ac1b0 100644 --- a/dlls/riched20/writer.c +++ b/dlls/riched20/writer.c @@ -782,8 +782,7 @@ ME_StreamOutText(ME_TextEditor *editor, ME_OutStream *pStream, int nStart, int n nSize = WideCharToMultiByte(nCodePage, 0, item->member.run.strText->szData + nStart, nLen, NULL, 0, NULL, NULL); if (nSize > nBufLen) { - if (buffer) - FREE_OBJ(buffer); + FREE_OBJ(buffer); buffer = ALLOC_N_OBJ(char, nSize); nBufLen = nSize; } @@ -800,8 +799,7 @@ ME_StreamOutText(ME_TextEditor *editor, ME_OutStream *pStream, int nStart, int n item = ME_FindItemFwd(item, diRun); } - if (buffer) - FREE_OBJ(buffer); + FREE_OBJ(buffer); return success; } diff --git a/dlls/secur32/secur32.c b/dlls/secur32/secur32.c index ebe7e2ed169..664f901035c 100644 --- a/dlls/secur32/secur32.c +++ b/dlls/secur32/secur32.c @@ -666,8 +666,7 @@ static void SECUR32_freeProviders(void) { LIST_FOR_EACH_ENTRY(provider, &providerTable->table, SecureProvider, entry) { - if (provider->moduleName) - SECUR32_FREE(provider->moduleName); + SECUR32_FREE(provider->moduleName); if (provider->lib) FreeLibrary(provider->lib); } @@ -689,7 +688,7 @@ static void SECUR32_freeProviders(void) */ SECURITY_STATUS WINAPI FreeContextBuffer(PVOID pv) { - if (pv) SECUR32_FREE(pv); + SECUR32_FREE(pv); return SEC_E_OK; } diff --git a/dlls/secur32/tests/main.c b/dlls/secur32/tests/main.c index 44d83011e5f..41eb7fa7b2d 100644 --- a/dlls/secur32/tests/main.c +++ b/dlls/secur32/tests/main.c @@ -162,12 +162,9 @@ SECURITY_STATUS setupClient(PCredHandle cred, const char *user, if( identity != NULL) { - if(identity->Domain != 0) - HeapFree(GetProcessHeap(), 0, identity->Domain); - if(identity->User != 0) - HeapFree(GetProcessHeap(), 0, identity->User); - if(identity->Password != 0) - HeapFree(GetProcessHeap(), 0, identity->Password); + HeapFree(GetProcessHeap(), 0, identity->Domain); + HeapFree(GetProcessHeap(), 0, identity->User); + HeapFree(GetProcessHeap(), 0, identity->Password); HeapFree(GetProcessHeap(), 0, identity); } diff --git a/dlls/secur32/thunks.c b/dlls/secur32/thunks.c index 4bcd7bdfc2f..c0d12933edb 100644 --- a/dlls/secur32/thunks.c +++ b/dlls/secur32/thunks.c @@ -77,10 +77,8 @@ SECURITY_STATUS SEC_ENTRY thunk_AcquireCredentialsHandleW( ret = AcquireCredentialsHandleA(principal, package, fCredentialsUse, pvLogonID, pAuthData, pGetKeyFn, pvGetKeyArgument, phCredential, ptsExpiry); - if (principal) - SECUR32_FREE(principal); - if (package) - SECUR32_FREE(package); + SECUR32_FREE(principal); + SECUR32_FREE(package); } else ret = SEC_E_SECPKG_NOT_FOUND; @@ -262,8 +260,7 @@ SECURITY_STATUS SEC_ENTRY thunk_InitializeSecurityContextW( phCredential, phContext, target, fContextReq, Reserved1, TargetDataRep, pInput, Reserved2, phNewContext, pOutput, pfContextAttr, ptsExpiry); - if (target) - SECUR32_FREE(target); + SECUR32_FREE(target); } else ret = SEC_E_UNSUPPORTED_FUNCTION; @@ -898,7 +895,6 @@ SECURITY_STATUS SEC_ENTRY thunk_ImportSecurityContextW( TRACE("%s %p %p %p\n", debugstr_w(pszPackage), pPackedContext, Token, phContext); ret = ImportSecurityContextA(package, pPackedContext, Token, phContext); - if (package) - SECUR32_FREE(package); + SECUR32_FREE(package); return ret; } diff --git a/dlls/urlmon/umon.c b/dlls/urlmon/umon.c index 79f30b79a4f..9c64e9a4480 100644 --- a/dlls/urlmon/umon.c +++ b/dlls/urlmon/umon.c @@ -737,10 +737,8 @@ static HRESULT URLMonikerImpl_BindToStorage_hack(LPCWSTR URLName, Binding_CloseCacheDownload(bind); Binding_FinishedDownload(bind, hres); - if (user) - HeapFree(GetProcessHeap(), 0, user); - if (pass) - HeapFree(GetProcessHeap(), 0, pass); + HeapFree(GetProcessHeap(), 0, user); + HeapFree(GetProcessHeap(), 0, pass); HeapFree(GetProcessHeap(), 0, path); HeapFree(GetProcessHeap(), 0, host); HeapFree(GetProcessHeap(), 0, urlcopy); diff --git a/dlls/wined3d/query.c b/dlls/wined3d/query.c index 3b0c312e943..3628d4b812c 100644 --- a/dlls/wined3d/query.c +++ b/dlls/wined3d/query.c @@ -60,9 +60,7 @@ ULONG WINAPI IWineD3DQueryImpl_Release(IWineD3DQuery *iface) { TRACE("(%p) : Releasing from %ld\n", This, This->ref); ref = InterlockedDecrement(&This->ref); if (ref == 0) { - if(This->extendedData != NULL){ - HeapFree(GetProcessHeap(), 0, This->extendedData); - } + HeapFree(GetProcessHeap(), 0, This->extendedData); HeapFree(GetProcessHeap(), 0, This); } return ref; diff --git a/dlls/wininet/internet.c b/dlls/wininet/internet.c index 8c2f08e5f25..76426253d50 100644 --- a/dlls/wininet/internet.c +++ b/dlls/wininet/internet.c @@ -1533,8 +1533,7 @@ BOOL WINAPI InternetCrackUrlW(LPCWSTR lpszUrl_orig, DWORD dwUrlLength_orig, DWOR debugstr_wn(lpUC->lpszUrlPath,lpUC->dwUrlPathLength), debugstr_wn(lpUC->lpszExtraInfo,lpUC->dwExtraInfoLength)); - if (lpszUrl_decode) - HeapFree(GetProcessHeap(), 0, lpszUrl_decode ); + HeapFree(GetProcessHeap(), 0, lpszUrl_decode ); return TRUE; } diff --git a/dlls/wininet/urlcache.c b/dlls/wininet/urlcache.c index 3557ea5c1b3..56b5c8d9812 100644 --- a/dlls/wininet/urlcache.c +++ b/dlls/wininet/urlcache.c @@ -2280,7 +2280,6 @@ BOOL WINAPI CommitUrlCacheEntryA( { dwError = GetLastError(); } - if (original_url) HeapFree(GetProcessHeap(), 0, original_url); } else diff --git a/dlls/winmm/winealsa/audio.c b/dlls/winmm/winealsa/audio.c index e422fba22f0..67f4bd2bbb7 100644 --- a/dlls/winmm/winealsa/audio.c +++ b/dlls/winmm/winealsa/audio.c @@ -1041,12 +1041,10 @@ static int ALSA_AddCommonDevice(snd_ctl_t *ctl, snd_pcm_t *pcm, const char *pcmn */ static void ALSA_FreeDevice(WINE_WAVEDEV *ww) { - if (ww->pcmname) - HeapFree(GetProcessHeap(), 0, ww->pcmname); + HeapFree(GetProcessHeap(), 0, ww->pcmname); ww->pcmname = NULL; - if (ww->ctlname) - HeapFree(GetProcessHeap(), 0, ww->ctlname); + HeapFree(GetProcessHeap(), 0, ww->ctlname); ww->ctlname = NULL; } @@ -1627,11 +1625,8 @@ LONG ALSA_WaveInit(void) ALSA_AddUserSpecifiedDevice(ctl_name, pcm_name); } - if (ctl_name) - HeapFree(GetProcessHeap(), 0, ctl_name); - - if (pcm_name) - HeapFree(GetProcessHeap(), 0, pcm_name); + HeapFree(GetProcessHeap(), 0, ctl_name); + HeapFree(GetProcessHeap(), 0, pcm_name); } if (key) diff --git a/dlls/winmm/wineesd/audio.c b/dlls/winmm/wineesd/audio.c index 6bb035b8fe2..4426da4e058 100644 --- a/dlls/winmm/wineesd/audio.c +++ b/dlls/winmm/wineesd/audio.c @@ -389,12 +389,8 @@ void ESD_CloseWaveOutDevice(WINE_WAVEOUT* wwo) wwo->esd_fd = -1; /* free up the buffer we use for volume and reset the size */ - if(wwo->sound_buffer) - { - HeapFree(GetProcessHeap(), 0, wwo->sound_buffer); - wwo->sound_buffer = NULL; - } - + HeapFree(GetProcessHeap(), 0, wwo->sound_buffer); + wwo->sound_buffer = NULL; wwo->buffer_size = 0; } diff --git a/dlls/x11drv/xrender.c b/dlls/x11drv/xrender.c index 2068e5bfcb2..2d0100bcea3 100644 --- a/dlls/x11drv/xrender.c +++ b/dlls/x11drv/xrender.c @@ -344,8 +344,7 @@ static void FreeEntry(int entry) formatEntry->realized = NULL; if(formatEntry->bitmaps) { for(i = 0; i < formatEntry->nrealized; i++) - if(formatEntry->bitmaps[i]) - HeapFree(GetProcessHeap(), 0, formatEntry->bitmaps[i]); + HeapFree(GetProcessHeap(), 0, formatEntry->bitmaps[i]); HeapFree(GetProcessHeap(), 0, formatEntry->bitmaps); formatEntry->bitmaps = NULL; HeapFree(GetProcessHeap(), 0, formatEntry->gis); diff --git a/programs/regedit/treeview.c b/programs/regedit/treeview.c index db31c947cca..72cd5e212e8 100644 --- a/programs/regedit/treeview.c +++ b/programs/regedit/treeview.c @@ -628,8 +628,7 @@ done: SendMessage(hwndTV, WM_SETREDRAW, TRUE, 0); SetCursor(hcursorOld); expanding = FALSE; - if (keyPath) - HeapFree(GetProcessHeap(), 0, keyPath); + HeapFree(GetProcessHeap(), 0, keyPath); return TRUE; } diff --git a/programs/wineboot/wineboot.c b/programs/wineboot/wineboot.c index 4e9270e8b68..c962639b490 100644 --- a/programs/wineboot/wineboot.c +++ b/programs/wineboot/wineboot.c @@ -326,8 +326,7 @@ static BOOL pendingRename(void) res=TRUE; end: - if( buffer!=NULL ) - HeapFree(GetProcessHeap(), 0, buffer); + HeapFree(GetProcessHeap(), 0, buffer); if( hSession!=NULL ) RegCloseKey( hSession ); diff --git a/programs/winecfg/audio.c b/programs/winecfg/audio.c index fa1e5faedae..fede02d7e28 100644 --- a/programs/winecfg/audio.c +++ b/programs/winecfg/audio.c @@ -480,11 +480,8 @@ static void findAudioDrivers(void) HCURSOR old_cursor; /* delete an existing list */ - if (loadedAudioDrv) - { - HeapFree(GetProcessHeap(), 0, loadedAudioDrv); - loadedAudioDrv = 0; - } + HeapFree(GetProcessHeap(), 0, loadedAudioDrv); + loadedAudioDrv = 0; /* change to the wait cursor because this can take a while if there is a * misbehaving driver that takes a long time to open