Imported Upstream version 3.3.3
[debian/amanda] / perl / Amanda / Tapelist.pm
index 26803117b58f9eed59adaaa4dde491af47fdf765..6bc5fbd3603351d4ecb0a9ea7b229ec46d273f04 100644 (file)
@@ -413,12 +413,14 @@ sub _read_tapelist {
     open(my $fh, "<", $self->{'filename'}) or return $self;
     while (my $line = <$fh>) {
        my ($datestamp, $label, $reuse, $barcode, $meta, $blocksize, $comment)
-           = $line =~ m/^([0-9]*)\s([^\s]*)\s(reuse|no-reuse)\s*(?:BARCODE:([^\s]*))?\s*(?:META:([^\s]*))?\s*(?:BLOCKSIZE:([^\s]*))?\s*(?:\#(.*))?$/mx;
-       next if !defined $datestamp; # silently filter out bogus lines
+           = $line =~ m/^([0-9]+)\s*([^\s]*)\s*(?:(reuse|no-reuse))?\s*(?:BARCODE:([^\s]*))?\s*(?:META:([^\s]*))?\s*(?:BLOCKSIZE:([^\s]*))?\s*(?:\#(.*))?$/mx;
+       if (!defined $datestamp) {
+           Amanda::Debug::critical("Bogus line in the tapelist ($self->{'filename'}) file: $line");
+       }
        push @tles, {
            'datestamp' => $datestamp,
            'label' => $label,
-           'reuse' => ($reuse eq 'reuse'),
+           'reuse' => (!defined $reuse || $reuse eq 'reuse'),
            'barcode' => $barcode,
            'meta' => $meta,
            'blocksize' => $blocksize,