From: Hermès Bélusca-Maïto Date: Fri, 30 May 2014 20:40:02 +0000 (+0000) Subject: [NTOS:CM] X-Git-Tag: backups/0.3.17@66124~1079 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=64fcc42ee57bbf8a21f13d4611460c636bcfe06d [NTOS:CM] - Add a DPRINT1 in CmCheckRegistry because it is unimplemented, and give the CheckFlags value to CmCheckRegistry, when it is called in CmpInitializeHive. - Give the CheckFlags value to CmpInitializeHive, when it is called in CmpInitHiveFromFile. - Really mention that the CmCreateRootNode call is a HACK for ROS. svn path=/trunk/; revision=63505 --- diff --git a/reactos/ntoskrnl/config/cmcheck.c b/reactos/ntoskrnl/config/cmcheck.c index d166ff48d60..4172dddc332 100644 --- a/reactos/ntoskrnl/config/cmcheck.c +++ b/reactos/ntoskrnl/config/cmcheck.c @@ -22,5 +22,6 @@ CmCheckRegistry(IN PCMHIVE RegistryHive, IN ULONG Flags) { /* FIXME: HACK! */ + DPRINT1("CmCheckRegistry(0x%p, %lu) is UNIMPLEMENTED!\n", RegistryHive, Flags); return 0; } diff --git a/reactos/ntoskrnl/config/cminit.c b/reactos/ntoskrnl/config/cminit.c index 8689e8eab5d..147ba73d993 100644 --- a/reactos/ntoskrnl/config/cminit.c +++ b/reactos/ntoskrnl/config/cminit.c @@ -214,7 +214,8 @@ CmpInitializeHive(OUT PCMHIVE *RegistryHive, (OperationType == HINIT_MAPFILE)) { /* Verify integrity */ - if (CmCheckRegistry((PCMHIVE)Hive, TRUE)) + ULONG CheckStatus = CmCheckRegistry(Hive, CheckFlags); + if (CheckStatus != 0) { /* Cleanup allocations and fail */ ExFreePoolWithTag(Hive->FlusherLock, TAG_CM); diff --git a/reactos/ntoskrnl/config/cmsysini.c b/reactos/ntoskrnl/config/cmsysini.c index 45242d28388..f0a7d7e5a0f 100644 --- a/reactos/ntoskrnl/config/cmsysini.c +++ b/reactos/ntoskrnl/config/cmsysini.c @@ -358,7 +358,7 @@ CmpInitHiveFromFile(IN PCUNICODE_STRING HiveName, LogHandle, NULL, HiveName, - 0); + CheckFlags); if (!NT_SUCCESS(Status)) { /* Fail */ @@ -370,7 +370,7 @@ CmpInitHiveFromFile(IN PCUNICODE_STRING HiveName, /* Success, return hive */ *Hive = NewHive; - /* ROS: Init root key cell and prepare the hive */ + /* HACK: ROS: Init root key cell and prepare the hive */ if (Operation == HINIT_CREATE) CmCreateRootNode(&NewHive->Hive, L""); /* Duplicate the hive name */