[PATCH] ver: curdirlen and destdirlen are in&out parameters (Coverity)
Marcus Meissner
marcus at jet.franken.de
Sun May 26 08:49:42 CDT 2013
Both are in/out parameters, so handle them like this.
CID 713991 Uninitialized scalar variable
CID 713992 Uninitialized scalar variable
Ciao, Marcus
---
dlls/ver.dll16/version.c | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/dlls/ver.dll16/version.c b/dlls/ver.dll16/version.c
index 45b9277..5e6692f 100644
--- a/dlls/ver.dll16/version.c
+++ b/dlls/ver.dll16/version.c
@@ -494,11 +494,23 @@ DWORD WINAPI VerFindFile16( UINT16 flags, LPSTR lpszFilename,
LPSTR lpszDestDir, UINT16 *lpuDestDirLen )
{
UINT curDirLen, destDirLen;
- DWORD retv = VerFindFileA( flags, lpszFilename, lpszWinDir, lpszAppDir,
- lpszCurDir, &curDirLen, lpszDestDir, &destDirLen );
+ UINT *pcurDirLen = NULL, *pdestDirLen = NULL;
+ DWORD retv;
- *lpuCurDirLen = (UINT16)curDirLen;
- *lpuDestDirLen = (UINT16)destDirLen;
+ if (lpuCurDirLen) {
+ curDirLen = *lpuCurDirLen;
+ pcurDirLen = &curDirLen;
+ }
+ if (lpuDestDirLen) {
+ destDirLen = *lpuDestDirLen;
+ pdestDirLen = &destDirLen;
+ }
+ retv = VerFindFileA( flags, lpszFilename, lpszWinDir, lpszAppDir,
+ lpszCurDir, pcurDirLen, lpszDestDir, pdestDirLen );
+ if (lpuCurDirLen)
+ *lpuCurDirLen = (UINT16)curDirLen;
+ if (lpuDestDirLen)
+ *lpuDestDirLen = (UINT16)destDirLen;
return retv;
}
--
1.7.10.4
More information about the wine-patches
mailing list