3f4a491
diff -ruNp tar-1.22.orig/src/list.c tar-1.22/src/list.c
3f4a491
--- tar-1.22.orig/src/list.c	2008-10-30 12:10:04.000000000 +0100
3f4a491
+++ tar-1.22/src/list.c	2009-03-06 00:03:05.925105425 +0100
a4e0f12
@@ -138,6 +138,14 @@ read_and (void (*do_something) (void))
c2c695c
 
c2c695c
 	  if (!ignore_zeros_option)
c2c695c
 	    {
c2c695c
+             /*
c2c695c
+              * According to POSIX tar specs, this is wrong, but on the web
c2c695c
+              * there are some tar specs that can trigger this, and some tar
c2c695c
+              * implementations create tars according to that spec.  For now,
c2c695c
+              * let's not be pedantic about issuing the warning.
c2c695c
+              */
c2c695c
+#if 0
c2c695c
+
c2c695c
 	      char buf[UINTMAX_STRSIZE_BOUND];
c2c695c
 
9934f57
 	      status = read_header (&current_header, &current_stat_info,
a4e0f12
@@ -147,6 +155,9 @@ read_and (void (*do_something) (void))
a4e0f12
 	      WARNOPT (WARN_ALONE_ZERO_BLOCK,
a4e0f12
 		       (0, 0, _("A lone zero block at %s"),
a4e0f12
 			STRINGIFY_BIGINT (current_block_ordinal (), buf)));
c2c695c
+#endif
a4e0f12
+	      status = read_header (&current_header, &current_stat_info,
a4e0f12
+	                            read_header_auto);
c2c695c
 	      break;
c2c695c
 	    }
c2c695c
 	  status = prev_status;