From: Zebediah Figura Subject: [v2 5/5] compobj.dll16: Implement CoFreeUnusedLibraries16(). Message-Id: <1486621035-12635-5-git-send-email-z.figura12@gmail.com> Date: Thu, 9 Feb 2017 00:17:15 -0600 In-Reply-To: <1486621035-12635-1-git-send-email-z.figura12@gmail.com> References: <1486621035-12635-1-git-send-email-z.figura12@gmail.com> Signed-off-by: Zebediah Figura --- dlls/compobj.dll16/compobj.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/dlls/compobj.dll16/compobj.c b/dlls/compobj.dll16/compobj.c index e761f7f..9a905c8 100644 --- a/dlls/compobj.dll16/compobj.c +++ b/dlls/compobj.dll16/compobj.c @@ -419,7 +419,15 @@ void WINAPI CoUninitialize16(void) */ void WINAPI CoFreeUnusedLibraries16(void) { - CoFreeUnusedLibraries(); + struct open_dll *ptr, *next; + + TRACE("()\n"); + LIST_FOR_EACH_ENTRY_SAFE(ptr, next, &open_dll_list, struct open_dll, entry) + { + if(entry->DllCanUnloadNow && + WOWCallback16Ex((DWORD) entry->DllCanUnloadNow, WCB16_PASCAL, 0, NULL, NULL)) + dll_list_free(ptr); + } } /*********************************************************************** -- 2.7.4