[v2 5/5] compobj.dll16: Implement CoFreeUnusedLibraries16().

Zebediah Figura z.figura12 at gmail.com
Thu Feb 9 00:17:15 CST 2017


Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
 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




More information about the wine-patches mailing list