=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: dplayx: Reorder some code to avoid memory leak (coverity).
Alexandre Julliard
julliard at winehq.org
Tue Oct 30 13:27:35 CDT 2012
Module: wine
Branch: master
Commit: 3dd7c64c257ac801a0679a7b2be5388fe68ccce5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=3dd7c64c257ac801a0679a7b2be5388fe68ccce5
Author: André Hentschel <nerv at dawncrow.de>
Date: Mon Oct 29 20:16:36 2012 +0100
dplayx: Reorder some code to avoid memory leak (coverity).
---
dlls/dplayx/dplay.c | 13 ++++---------
1 files changed, 4 insertions(+), 9 deletions(-)
diff --git a/dlls/dplayx/dplay.c b/dlls/dplayx/dplay.c
index 7636546..29212bc 100644
--- a/dlls/dplayx/dplay.c
+++ b/dlls/dplayx/dplay.c
@@ -1126,10 +1126,6 @@ DP_SetGroupData( lpGroupData lpGData, DWORD dwFlags,
/* Reallocate for new data */
if( lpData != NULL )
{
- LPVOID lpNewData = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY,
- sizeof( dwDataSize ) );
- CopyMemory( lpNewData, lpData, dwDataSize );
-
if( dwFlags & DPSET_LOCAL )
{
lpGData->lpLocalData = lpData;
@@ -1137,7 +1133,8 @@ DP_SetGroupData( lpGroupData lpGData, DWORD dwFlags,
}
else
{
- lpGData->lpRemoteData = lpNewData;
+ lpGData->lpRemoteData = HeapAlloc( GetProcessHeap(), 0, dwDataSize );
+ CopyMemory( lpGData->lpRemoteData, lpData, dwDataSize );
lpGData->dwRemoteDataSize = dwDataSize;
}
}
@@ -1330,9 +1327,6 @@ DP_SetPlayerData( lpPlayerData lpPData, DWORD dwFlags,
/* Reallocate for new data */
if( lpData != NULL )
{
- LPVOID lpNewData = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY,
- sizeof( dwDataSize ) );
- CopyMemory( lpNewData, lpData, dwDataSize );
if( dwFlags & DPSET_LOCAL )
{
@@ -1341,7 +1335,8 @@ DP_SetPlayerData( lpPlayerData lpPData, DWORD dwFlags,
}
else
{
- lpPData->lpRemoteData = lpNewData;
+ lpPData->lpRemoteData = HeapAlloc( GetProcessHeap(), 0, dwDataSize );
+ CopyMemory( lpPData->lpRemoteData, lpData, dwDataSize );
lpPData->dwRemoteDataSize = dwDataSize;
}
}
More information about the wine-cvs
mailing list