Module: wine Branch: master Commit: e14b6dcf7c02b79344476023daa4555e497cfc10 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e14b6dcf7c02b79344476023da...
Author: Juan Lang juan_lang@yahoo.com Date: Thu Jun 7 12:28:32 2007 -0700
comdlg32: Check file dialog's FOIShellView before accessing it.
---
dlls/comdlg32/filedlg.c | 13 +++++++++---- 1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/dlls/comdlg32/filedlg.c b/dlls/comdlg32/filedlg.c index 5409b91..11c4502 100644 --- a/dlls/comdlg32/filedlg.c +++ b/dlls/comdlg32/filedlg.c @@ -2021,7 +2021,8 @@ BOOL FILEDLG95_OnOpen(HWND hwnd) } else if( nOpenAction == ONOPEN_SEARCH ) { - IShellView_Refresh(fodInfos->Shell.FOIShellView); + if (fodInfos->Shell.FOIShellView) + IShellView_Refresh(fodInfos->Shell.FOIShellView); } COMDLG32_SHFree(pidlCurrent); SendMessageW(fodInfos->DlgInfos.hwndFileName, EM_SETSEL, 0, -1); @@ -2322,8 +2323,11 @@ static void FILEDLG95_SHELL_Clean(HWND hwnd) COMDLG32_SHFree(fodInfos->ShellInfos.pidlAbsCurrent);
/* clean Shell interfaces */ - IShellView_DestroyViewWindow(fodInfos->Shell.FOIShellView); - IShellView_Release(fodInfos->Shell.FOIShellView); + if (fodInfos->Shell.FOIShellView) + { + IShellView_DestroyViewWindow(fodInfos->Shell.FOIShellView); + IShellView_Release(fodInfos->Shell.FOIShellView); + } IShellFolder_Release(fodInfos->Shell.FOIShellFolder); IShellBrowser_Release(fodInfos->Shell.FOIShellBrowser); if (fodInfos->Shell.FOIDataObject) @@ -2483,7 +2487,8 @@ static BOOL FILEDLG95_FILETYPE_OnCommand(HWND hwnd, WORD wNotifyCode) }
/* Refresh the actual view to display the included items*/ - IShellView_Refresh(fodInfos->Shell.FOIShellView); + if (fodInfos->Shell.FOIShellView) + IShellView_Refresh(fodInfos->Shell.FOIShellView); } } return FALSE;