[PATCH] mciavi32: removed duplicate strlen/NULL check (Coverity)

Marcus Meissner meissner at suse.de
Sun Nov 8 03:24:32 CST 2009


Hi,

cleans up a bit of duplication in mciavi32 as spotted by Coverity.

Ciao, Marcus
---
 dlls/mciavi32/mciavi.c |   37 +++++++++++++++++--------------------
 1 files changed, 17 insertions(+), 20 deletions(-)

diff --git a/dlls/mciavi32/mciavi.c b/dlls/mciavi32/mciavi.c
index 4e5faac..ba86024 100644
--- a/dlls/mciavi32/mciavi.c
+++ b/dlls/mciavi32/mciavi.c
@@ -250,29 +250,26 @@ static	DWORD	MCIAVI_mciOpen(UINT wDevID, DWORD dwFlags,
 	     * contains the hFile value ?
 	     */
 	    dwRet = MCIERR_UNRECOGNIZED_COMMAND;
-	} else if (strlenW(lpOpenParms->lpstrElementName) > 0) {
+	} else if (lpOpenParms->lpstrElementName && (strlenW(lpOpenParms->lpstrElementName) > 0)) {
 	    /* FIXME : what should be done id wma->hFile is already != 0, or the driver is playin' */
 	    TRACE("MCI_OPEN_ELEMENT %s!\n", debugstr_w(lpOpenParms->lpstrElementName));
 
-            if (lpOpenParms->lpstrElementName && (strlenW(lpOpenParms->lpstrElementName) > 0))
-            {
-                wma->lpFileName = HeapAlloc(GetProcessHeap(), 0, (strlenW(lpOpenParms->lpstrElementName) + 1) * sizeof(WCHAR));
-                strcpyW(wma->lpFileName, lpOpenParms->lpstrElementName);
-
-		wma->hFile = mmioOpenW(lpOpenParms->lpstrElementName, NULL,
-				       MMIO_ALLOCBUF | MMIO_DENYWRITE | MMIO_READ);
-
-		if (wma->hFile == 0) {
-		    WARN("can't find file=%s!\n", debugstr_w(lpOpenParms->lpstrElementName));
-		    dwRet = MCIERR_FILE_NOT_FOUND;
-		} else {
-		    if (!MCIAVI_GetInfo(wma))
-			dwRet = MCIERR_INVALID_FILE;
-		    else if (!MCIAVI_OpenVideo(wma))
-			dwRet = MCIERR_CANNOT_LOAD_DRIVER;
-		    else if (!MCIAVI_CreateWindow(wma, dwFlags, lpOpenParms))
-			dwRet = MCIERR_CREATEWINDOW;
-		}
+            wma->lpFileName = HeapAlloc(GetProcessHeap(), 0, (strlenW(lpOpenParms->lpstrElementName) + 1) * sizeof(WCHAR));
+            strcpyW(wma->lpFileName, lpOpenParms->lpstrElementName);
+
+	    wma->hFile = mmioOpenW(lpOpenParms->lpstrElementName, NULL,
+				   MMIO_ALLOCBUF | MMIO_DENYWRITE | MMIO_READ);
+
+	    if (wma->hFile == 0) {
+		WARN("can't find file=%s!\n", debugstr_w(lpOpenParms->lpstrElementName));
+		dwRet = MCIERR_FILE_NOT_FOUND;
+	    } else {
+		if (!MCIAVI_GetInfo(wma))
+		    dwRet = MCIERR_INVALID_FILE;
+		else if (!MCIAVI_OpenVideo(wma))
+		    dwRet = MCIERR_CANNOT_LOAD_DRIVER;
+		else if (!MCIAVI_CreateWindow(wma, dwFlags, lpOpenParms))
+		    dwRet = MCIERR_CREATEWINDOW;
 	    }
 	} else {
 	    FIXME("Don't record yet\n");
-- 
1.6.4.2



More information about the wine-patches mailing list