Module: wine Branch: master Commit: bd9701add87316d94f72294b947683dc265d1c82 URL: http://source.winehq.org/git/wine.git/?a=commit;h=bd9701add87316d94f72294b94...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Sun Nov 22 18:31:20 2015 +0300
dplayx: Fix a possible memory leak on error path (Coverity).
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/dplayx/dplay.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c index 861c090..92062d3 100644 --- a/dlls/dplayx/dplay.c +++ b/dlls/dplayx/dplay.c @@ -1593,17 +1593,12 @@ static HRESULT DP_IF_CreatePlayer( IDirectPlayImpl *This, void *lpMsgHdr, DPID * player total */ lpPData = DP_CreatePlayer( This, lpidPlayer, lpPlayerName, dwCreateFlags, hEvent, bAnsi ); - - if( lpPData == NULL ) - { - return DPERR_CANTADDPLAYER; - } - /* Create the list object and link it in */ lpPList = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof( *lpPList ) ); - if( lpPList == NULL ) + if( !lpPData || !lpPList ) { - FIXME( "Memory leak\n" ); + HeapFree( GetProcessHeap(), 0, lpPData ); + HeapFree( GetProcessHeap(), 0, lpPList ); return DPERR_CANTADDPLAYER; }