summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorCaolán McNamara <caolan.mcnamara@collabora.com>2024-04-26 11:42:35 +0100
committerCaolán McNamara <caolan.mcnamara@collabora.com>2024-04-29 09:30:26 +0200
commita70a8f55973ec3e71f65335be75699f1d2a73d62 (patch)
tree7f6b680c571fcf51b97728c810374137d1e00d19 /sfx2
parent5354d8fb170418c130c08b070029f09337573ef6 (diff)
Unchecked HeapAlloc
Change-Id: Icd49d0b5f996d57d8e9518cb08fd3c3fc54fa779 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166732 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/appl/shutdowniconw32.cxx15
-rw-r--r--sfx2/source/doc/syspathw32.cxx21
2 files changed, 19 insertions, 17 deletions
diff --git a/sfx2/source/appl/shutdowniconw32.cxx b/sfx2/source/appl/shutdowniconw32.cxx
index 2fb7cd2b7875..a237aac13547 100644
--- a/sfx2/source/appl/shutdowniconw32.cxx
+++ b/sfx2/source/appl/shutdowniconw32.cxx
@@ -681,15 +681,16 @@ static OUString SHGetSpecialFolder( int nFolderID )
if( hHdl == NOERROR )
{
- WCHAR *lpFolderA;
- lpFolderA = ALLOC( WCHAR, 16000 );
-
- SHGetPathFromIDListW( pidl, lpFolderA );
- aFolder = o3tl::toU( lpFolderA );
+ if (WCHAR *lpFolderA = ALLOC(WCHAR, 16000))
+ {
+ SHGetPathFromIDListW(pidl, lpFolderA);
+ aFolder = o3tl::toU(lpFolderA);
- FREE( lpFolderA );
- SHFree_( pidl );
+ FREE(lpFolderA);
+ SHFree_(pidl);
+ }
}
+
return aFolder;
}
diff --git a/sfx2/source/doc/syspathw32.cxx b/sfx2/source/doc/syspathw32.cxx
index f60f459829d7..dce19e3625c0 100644
--- a/sfx2/source/doc/syspathw32.cxx
+++ b/sfx2/source/doc/syspathw32.cxx
@@ -37,17 +37,18 @@ static bool SHGetSpecialFolderW32( int nFolderID, WCHAR* pszFolder, int nSize )
if( hHdl == NOERROR )
{
- WCHAR *lpFolder = static_cast< WCHAR* >( HeapAlloc( GetProcessHeap(), 0, 16000 ));
-
- SHGetPathFromIDListW( pidl, lpFolder );
- wcsncpy( pszFolder, lpFolder, nSize );
-
- HeapFree( GetProcessHeap(), 0, lpFolder );
- IMalloc *pMalloc;
- if( NOERROR == SHGetMalloc(&pMalloc) )
+ if (WCHAR *lpFolder = static_cast<WCHAR*>(HeapAlloc(GetProcessHeap(), 0, 16000)))
{
- pMalloc->Free( pidl );
- pMalloc->Release();
+ SHGetPathFromIDListW( pidl, lpFolder );
+ wcsncpy( pszFolder, lpFolder, nSize );
+
+ HeapFree( GetProcessHeap(), 0, lpFolder );
+ IMalloc *pMalloc;
+ if( NOERROR == SHGetMalloc(&pMalloc) )
+ {
+ pMalloc->Free( pidl );
+ pMalloc->Release();
+ }
}
}
return true;