[PATCH 5/5] Fix a find file handle leak
Nikolay Sivov
bunglehead at gmail.com
Wed Dec 9 17:01:59 CST 2009
---
dlls/comdlg32/filedlg.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/dlls/comdlg32/filedlg.c b/dlls/comdlg32/filedlg.c
index 908201d..f291690 100644
--- a/dlls/comdlg32/filedlg.c
+++ b/dlls/comdlg32/filedlg.c
@@ -1527,12 +1527,11 @@ static LRESULT FILEDLG95_InitControls(HWND hwnd)
if ( win98plus && handledPath == FALSE &&
fodInfos->filter && *fodInfos->filter) {
- BOOL searchMore = TRUE;
LPCWSTR lpstrPos = fodInfos->filter;
WIN32_FIND_DATAW FindFileData;
- HANDLE hFind;
+ HANDLE hFind = NULL;
- while (searchMore)
+ while (1)
{
/* filter is a list... title\0ext\0......\0\0 */
@@ -1550,7 +1549,6 @@ static LRESULT FILEDLG95_InitControls(HWND hwnd)
lpstrPos += lstrlenW(lpstrPos) + 1;
} else {
- searchMore = FALSE;
MemFree(fodInfos->initdir);
fodInfos->initdir = MemAlloc(MAX_PATH*sizeof(WCHAR));
@@ -1562,6 +1560,8 @@ static LRESULT FILEDLG95_InitControls(HWND hwnd)
break;
}
}
+
+ FindClose(hFind);
}
/* 5. Win2000+: FIXME: Next, Recently used? Not sure how windows does this */
--
1.5.6.5
--=-OAA6nyVYi3du5eR30K38--
More information about the wine-patches
mailing list