Fixed the load count in LdrpDetachProcess. That made it again possible to call the...
authorHartmut Birr <osexpert@googlemail.com>
Mon, 8 Aug 2005 01:47:52 +0000 (01:47 +0000)
committerHartmut Birr <osexpert@googlemail.com>
Mon, 8 Aug 2005 01:47:52 +0000 (01:47 +0000)
svn path=/trunk/; revision=17193

reactos/lib/ntdll/ldr/utils.c

index 178f25e..dce3170 100644 (file)
@@ -104,7 +104,7 @@ static __inline LONG LdrpDecrementLoadCount(PLDR_DATA_TABLE_ENTRY Module, BOOLEA
        RtlEnterCriticalSection (NtCurrentPeb()->LoaderLock);
      }
    LoadCount = Module->LoadCount;
-   if (Module->LoadCount > 0)
+   if (Module->LoadCount > 0 && Module->LoadCount != 0xFFFF)
      {
        Module->LoadCount--;
      }
@@ -2397,7 +2397,7 @@ LdrpDetachProcess(BOOLEAN UnloadAll)
    while (Entry != ModuleListHead)
      {
        Module = CONTAINING_RECORD(Entry, LDR_DATA_TABLE_ENTRY, InInitializationOrderModuleList);
-       if (((UnloadAll && Module->LoadCount <= 0) || Module->LoadCount == 0) &&
+       if (((UnloadAll && Module->LoadCount == 0xFFFF) || Module->LoadCount == 0) &&
            Module->Flags & LDRP_ENTRY_PROCESSED &&
            !(Module->Flags & LDRP_UNLOAD_IN_PROGRESS))
          {