summaryrefslogtreecommitdiff
blob: 5f5a81c1a7b9126363230c6fa885fc8da323d353 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
http://lists.gnu.org/archive/html/bug-tar/2010-11/msg00065.html
http://bugs.gentoo.org/349155

From 24214ca5d506f56dc0cb2a2e1312256472039475 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Mon, 15 Nov 2010 00:07:53 -0800
Subject: [PATCH] tar: fix --verify option, which broke in 1.24

* NEWS: Document this.
* src/compare.c (verify_volume): Decode the header before invoking
diff_archive, as diff_archive no longer does this as of the
2010-06-28 commit.  Also, don't try to invoke diff_archive on a
zero block.
* tests/Makefile.am (TESTSUITE_AT): Add verify.at.
* tests/testsuite.at: Include verify.at.
* tests/verify.at: New file.
---
 NEWS               |   10 ++++++++--
 src/compare.c      |    2 ++
 tests/Makefile.am  |    1 +
 tests/testsuite.at |    2 ++
 tests/verify.at    |   37 +++++++++++++++++++++++++++++++++++++
 5 files changed, 50 insertions(+), 2 deletions(-)
 create mode 100644 tests/verify.at

diff --git a/src/compare.c b/src/compare.c
index 6b7e6d8..f3112c6 100644
--- a/src/compare.c
+++ b/src/compare.c
@@ -611,8 +611,10 @@ verify_volume (void)
 		       (0, 0, _("A lone zero block at %s"),
 			STRINGIFY_BIGINT (current_block_ordinal (), buf)));
             }
+	  continue;
 	}
 
+      decode_header (current_header, &current_stat_info, &current_format, 1);
       diff_archive ();
       tar_stat_destroy (&current_stat_info);
     }
-- 
1.7.3.1