Diaa Sami : shell32: Fix a mem leak in SHBrowseForFolder.
Module: wine Branch: master Commit: 72a7aed5b685c782e57d7ccf661344f964cd6c3e URL: http://source.winehq.org/git/wine.git/?a=commit;h=72a7aed5b685c782e57d7ccf66... Author: Diaa Sami <diaasami(a)gmail.com> Date: Thu Jan 29 19:54:29 2009 +0000 shell32: Fix a mem leak in SHBrowseForFolder. --- dlls/shell32/brsfolder.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/dlls/shell32/brsfolder.c b/dlls/shell32/brsfolder.c index 70dcc47..d62bd10 100644 --- a/dlls/shell32/brsfolder.c +++ b/dlls/shell32/brsfolder.c @@ -801,6 +801,17 @@ static BOOL BrsFolder_OnWindowPosChanging(browse_info *info, WINDOWPOS *pos) return 0; } +static INT BrsFolder_OnDestroy(browse_info *info) +{ + if (info->layout) + { + SHFree(info->layout); + info->layout = NULL; + } + + return 0; +} + /************************************************************************* * BrsFolderDlgProc32 (not an exported API function) */ @@ -860,6 +871,9 @@ static INT_PTR CALLBACK BrsFolderDlgProc( HWND hWnd, UINT msg, WPARAM wParam, case BFFM_SETEXPANDED: /* unicode only */ return BrsFolder_OnSetExpanded(info, (LPVOID)lParam, (BOOL)wParam, NULL); + + case WM_DESTROY: + return BrsFolder_OnDestroy(info); } return FALSE; }
participants (1)
-
Alexandre Julliard