#!/usr/bin/perl
+
+# Copyright 2009-2012, Equinox Software, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
require 5.10.0;
use strict;
until ($ptr == $#record) {
# get datafield/tag data if we have it
$rc = stow_record_data() if ($c->{'renumber-from'} and $c->{'original-tag'});
- return $rc if $rc;
+ next if $rc;
# naked ampersands
if ($record[$ptr] =~ /&/ && $record[$ptr] !~ /&\w+?;/)
message("Dollar sign corrected");
}
+ # excessive trailing whitespace in subfield contents
+ if ($record[$ptr] =~ m|\s{10,}</subfield>|) {
+ $record[$ptr] =~ s|\s{10,}</subfield>|</subfield>|;
+ message("Trailing whitespace trimmed from subfield contents");
+ }
+
# automatable subfield maladies
$record[$ptr] =~ s/code=" ">c/code="c">/;
$record[$ptr] =~ s/code=" ">\$/code="c">\$/;
my $istrash = 0;
my $trash = $c->{trash};
- $l = <MARC> while (defined $l and $l !~ /<record>/);
+ $l = <MARC> while (defined $l and $l !~ /<record/);
return $l unless defined $l;
$c->{ricount}++;