Author: cgutman Date: Mon Dec 19 09:33:40 2011 New Revision: 54694
URL: http://svn.reactos.org/svn/reactos?rev=54694&view=rev Log: [NTOSKRNL] - Lock the registry before flushing hives to avoid, among other things, use of an ERESOURCE without being inside a critical region
Modified: trunk/reactos/ntoskrnl/config/cmsysini.c
Modified: trunk/reactos/ntoskrnl/config/cmsysini.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/config/cmsysini.c?... ============================================================================== --- trunk/reactos/ntoskrnl/config/cmsysini.c [iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/config/cmsysini.c [iso-8859-1] Mon Dec 19 09:33:40 2011 @@ -1933,9 +1933,13 @@ NTAPI CmShutdownSystem(VOID) { - /* Kill the workers and flush all hives */ + /* Kill the workers */ if (!CmFirstTime) CmpShutdownWorkers(); + + /* Flush all hives */ + CmpLockRegistryExclusive(); CmpDoFlushAll(TRUE); + CmpUnlockRegistry(); }
VOID