Changeset 3005 for trunk/src/kernel32/windllbase.cpp
- Timestamp:
- Mar 4, 2000, 8:52:37 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/windllbase.cpp
r2802 r3005 1 /* $Id: windllbase.cpp,v 1. 9 2000-02-16 14:22:11sandervl Exp $ */1 /* $Id: windllbase.cpp,v 1.10 2000-03-04 19:52:36 sandervl Exp $ */ 2 2 3 3 /* … … 49 49 : Win32ImageBase(hinstance), 50 50 referenced(0), fSkipEntryCalls(FALSE), 51 fAttachedToProcess(FALSE), fUnloaded(FALSE) 51 fAttachedToProcess(FALSE), fUnloaded(FALSE), fDynamicLoad(FALSE) 52 52 { 53 53 dllEntryPoint = DllEntryPoint; … … 96 96 Win32DllBase::~Win32DllBase() 97 97 { 98 Win32DllBase *dll = head;99 100 98 dprintf(("Win32DllBase::~Win32DllBase %s", szModule)); 101 99 … … 110 108 } 111 109 else { 110 Win32DllBase *dll = head; 112 111 while(dll && dll->next != this) { 113 112 dll = dll->next; … … 294 293 //****************************************************************************** 295 294 //****************************************************************************** 296 void Win32DllBase::deleteAll() 297 { 295 void Win32DllBase::deleteAll(BOOL fDynamicLoad) 296 { 297 Win32DllBase *dll = Win32DllBase::head, *tmp; 298 298 299 #ifdef DEBUG 299 300 dlllistmutex.enter(); 300 Win32DllBase *dll = head;301 301 302 302 dprintf(("Win32DllBase::deleteAll: List of loaded dlls:")); … … 306 306 } 307 307 dlllistmutex.leave(); 308 dll = Win32DllBase::head; 308 309 #endif 309 310 310 while(Win32DllBase::head) { 311 delete Win32DllBase::head; 311 while(dll) { 312 if(fDynamicLoad || !dll->fDynamicLoad) { 313 tmp = dll->next; 314 dll->Release(); 315 dll = tmp; 316 } 317 else dll = dll->next; 312 318 } 313 319 }
Note:
See TracChangeset
for help on using the changeset viewer.