when inode sig checking fails, just rm -rf the revision instead of
quiting the program. Therefore, the corrupt revision will be replaced
in the revlib automatically. 

Derek 

--- orig/tla/libarch/libraries.c
+++ mod/tla/libarch/libraries.c
@@ -314,10 +314,9 @@
         {
           if (check_inode_sigs) {
             if (!arch_valid_inode_sig (rel_peek_str (revision_dirs, 0, 0), 
archive, revision))
-              {
-                safe_printfmt (2, "corrupt library (failed inode signature 
validation)\n    archive: %s\n    revision: %s\nYou should remove this revision 
from your library.\n",
-                               archive, revision);
-                exit (2);
+              { 
+                rmrf_file(rel_peek_str (revision_dirs, 0, 0));
+                continue;
               }
           }
           answer = str_save (0, rel_peek_str (revision_dirs, 0, 0));


_______________________________________________
Gnu-arch-users mailing list
Gnu-arch-users@gnu.org
http://lists.gnu.org/mailman/listinfo/gnu-arch-users

GNU arch home page:
http://savannah.gnu.org/projects/gnu-arch/

Reply via email to