============================================================================= DirList_Destroy() Free memory used by dl structure
| 119 | // Free memory used by dl structure |
| 120 | // |
| 121 | BOOL DirList_Destroy(HWND hwnd) |
| 122 | { |
| 123 | |
| 124 | LPDLDATA lpdl = (LPVOID)GetProp(hwnd,pDirListProp); |
| 125 | |
| 126 | // Release multithreading objects |
| 127 | DirList_TerminateIconThread(hwnd); |
| 128 | CloseHandle(lpdl->hExitThread); |
| 129 | CloseHandle(lpdl->hTerminatedThread); |
| 130 | |
| 131 | if (lpdl->pidl) |
| 132 | CoTaskMemFree(lpdl->pidl); |
| 133 | |
| 134 | if (lpdl->lpsf) |
| 135 | lpdl->lpsf->lpVtbl->Release(lpdl->lpsf); |
| 136 | |
| 137 | // Free DirListData Property |
| 138 | RemoveProp(hwnd,pDirListProp); |
| 139 | GlobalFree(lpdl); |
| 140 | |
| 141 | return FALSE; |
| 142 | |
| 143 | } |
| 144 | |
| 145 | |
| 146 | //============================================================================= |
no test coverage detected