update for HEAD-2003091401
[reactos.git] / tools / mkhive / binhive.c
index cdae158..b91c60b 100644 (file)
@@ -1319,17 +1319,29 @@ CmiWriteHive(PREGISTRY_HIVE Hive,
   FILE *File;
   ULONG i;
 
-  /* FIXME: Calculate header checksum */
+#if 0
+  /* Check for existing hive file */
+  File = fopen (FileName, "rb");
+  if (File != NULL)
+    {
+      printf ("    File already exists\n");
+      fclose (File);
+      return TRUE;
+    }
+#endif
 
+  /* Create new hive file */
   File = fopen (FileName, "w+b");
   if (File == NULL)
     {
-
       return FALSE;
     }
 
   fseek (File, 0, SEEK_SET);
 
+  /* Calculate header checksum */
+  CmiCalcHiveChecksum (Hive);
+
   /* Write hive header */
   fwrite (Hive->HiveHeader, REG_BLOCK_SIZE, 1, File);