--- trunk/lib/WebPAC/Parser.pm 2006/09/24 18:52:35 689 +++ trunk/lib/WebPAC/Parser.pm 2006/09/24 19:00:56 690 @@ -93,6 +93,13 @@ # Find all the named subroutines my $eval_create; + my @errors; + + sub error { + my $msg = shift || $log->logconfess("error without message?"); + push @errors, $msg; + return ''; + } $Document->find( sub { my ($Document,$Element) = @_; @@ -154,8 +161,8 @@ $log->debug("create: $create"); - $log->logdie("invalid database $e[3]" ) unless $self->valid_database( $e[3] ); - $log->logdie("invalid input $e[5] of database $e[3]", ) unless $self->valid_database_input( $e[3], $e[5] ); + return error("invalid database $e[3]" ) unless $self->valid_database( $e[3] ); + return error("invalid input $e[5] of database $e[3]", ) unless $self->valid_database_input( $e[3], $e[5] ); $eval_create->{ $e[3] }->{ $e[5] } .= $create; @@ -181,6 +188,8 @@ $Dumper->print; } + $log->error("Parser errors: ", join("\n",@errors) ) if (@errors); + return 1; }