Diff
Not logged in

Differences From:

File src/checkout.c part of check-in [dbda8d6ce9] - Initial check-in of m1 sources. by drh on 2007-07-21 14:10:57. [view]

To:

File src/checkout.c part of check-in [394505791628e] - Add primitive start-time and duration controols to the timeline. Additional checksums on check-in and check-out. by drh on 2007-08-01 21:03:03. [view]

@@ -100,8 +100,9 @@
 void checkout_cmd(void){
   int forceFlag;
   int noWrite;
   int vid, prior;
+  Blob cksum1, cksum1b, cksum2;
 
   db_must_be_within_tree();
   db_begin_transaction();
   forceFlag = find_option("force","f",0)!=0;
@@ -135,6 +136,14 @@
     free(zManFile);
     db_lset_int("checkout", vid);
   }
   db_multi_exec("DELETE FROM vmerge");
+  vfile_aggregate_checksum_manifest(vid, &cksum1, &cksum1b);
+  vfile_aggregate_checksum_disk(vid, &cksum2);
+  if( blob_compare(&cksum1, &cksum2) ){
+    printf("WARNING: manifest checksum does not agree with disk\n");
+  }
+  if( blob_compare(&cksum1, &cksum1b) ){
+    printf("WARNING: manifest checksum does not agree with manifest\n");
+  }
   db_end_transaction(0);
 }