Blob Blame History Raw
diff -ruNp tar-1.22.orig/src/list.c tar-1.22/src/list.c
--- tar-1.22.orig/src/list.c	2008-10-30 12:10:04.000000000 +0100
+++ tar-1.22/src/list.c	2009-03-06 00:03:05.925105425 +0100
@@ -136,6 +136,14 @@ read_and (void (*do_something) (void))
 
 	  if (!ignore_zeros_option)
 	    {
+             /*
+              * According to POSIX tar specs, this is wrong, but on the web
+              * there are some tar specs that can trigger this, and some tar
+              * implementations create tars according to that spec.  For now,
+              * let's not be pedantic about issuing the warning.
+              */
+#if 0
+
 	      char buf[UINTMAX_STRSIZE_BOUND];
 
 	      status = read_header (false);
@@ -143,6 +151,8 @@ read_and (void (*do_something) (void))
 		break;
 	      WARN ((0, 0, _("A lone zero block at %s"),
 		     STRINGIFY_BIGINT (current_block_ordinal (), buf)));
+#endif
+	      status = read_header (false);
 	      break;
 	    }
 	  status = prev_status;