Dmitry Timoshkov : shlwapi: Avoid potential NULL pointer access if HeapAlloc fails.
Module: wine Branch: master Commit: 35a9587613f391f772ce027ac93dabba1190a791 URL: http://source.winehq.org/git/wine.git/?a=commit;h=35a9587613f391f772ce027ac9... Author: Dmitry Timoshkov <dmitry(a)baikal.ru> Date: Mon Feb 17 14:48:35 2014 +0900 shlwapi: Avoid potential NULL pointer access if HeapAlloc fails. --- dlls/shlwapi/istream.c | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/dlls/shlwapi/istream.c b/dlls/shlwapi/istream.c index 7d502a2..2e365d6 100644 --- a/dlls/shlwapi/istream.c +++ b/dlls/shlwapi/istream.c @@ -364,22 +364,21 @@ static const IStreamVtbl SHLWAPI_fsVTable = */ static IStream *IStream_Create(LPCWSTR lpszPath, HANDLE hFile, DWORD dwMode) { - ISHFileStream* fileStream; - - fileStream = HeapAlloc(GetProcessHeap(), 0, sizeof(ISHFileStream)); - - if (fileStream) - { - fileStream->IStream_iface.lpVtbl = &SHLWAPI_fsVTable; - fileStream->ref = 1; - fileStream->hFile = hFile; - fileStream->dwMode = dwMode; - fileStream->lpszPath = StrDupW(lpszPath); - fileStream->type = 0; /* FIXME */ - fileStream->grfStateBits = 0; /* FIXME */ - } - TRACE ("Returning %p\n", fileStream); - return &fileStream->IStream_iface; + ISHFileStream *fileStream; + + fileStream = HeapAlloc(GetProcessHeap(), 0, sizeof(ISHFileStream)); + if (!fileStream) return NULL; + + fileStream->IStream_iface.lpVtbl = &SHLWAPI_fsVTable; + fileStream->ref = 1; + fileStream->hFile = hFile; + fileStream->dwMode = dwMode; + fileStream->lpszPath = StrDupW(lpszPath); + fileStream->type = 0; /* FIXME */ + fileStream->grfStateBits = 0; /* FIXME */ + + TRACE ("Returning %p\n", fileStream); + return &fileStream->IStream_iface; } /*************************************************************************
participants (1)
-
Alexandre Julliard