--- trunk/lib/WebPAC/Normalize.pm 2006/07/05 00:12:08 583 +++ trunk/lib/WebPAC/Normalize.pm 2006/07/07 21:48:09 589 @@ -35,11 +35,11 @@ =head1 VERSION -Version 0.11 +Version 0.12 =cut -our $VERSION = '0.11'; +our $VERSION = '0.12'; =head1 SYNOPSIS @@ -516,7 +516,7 @@ warn "## ++ marc_compose($f,$sf,$v) ", dump( $m ),$/ if ($debug > 1); } - warn "## marc_compose(d) ", dump( $m ),$/ if ($debug > 1); + warn "## marc_compose current marc = ", dump( $m ),$/ if ($debug > 1); push @{ $marc_record->[ $marc_record_offset ] }, $m if ($#{$m} > 2); } @@ -649,7 +649,13 @@ my $f = shift; return unless (defined($rec && $rec->{$f})); my $sf = shift; - return map { $_->{$sf} } grep { ref($_) eq 'HASH' && $_->{$sf} } @{ $rec->{$f} }; + return map { + if (ref($_->{$sf}) eq 'ARRAY') { + @{ $_->{$sf} }; + } else { + $_->{$sf}; + } + } grep { ref($_) eq 'HASH' && $_->{$sf} } @{ $rec->{$f} }; } =head2 rec @@ -777,6 +783,7 @@ sub join_with { my $d = shift; + warn "### join_with('$d',",dump(@_),")\n" if ($debug > 2); my $v = join($d, grep { defined($_) && $_ ne '' } @_); return '' unless defined($v); return $v;