X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FSchema%2FLoader%2FDBI.pm;h=8946c9917030d7cc27ff1f13128cf35058631ce6;hb=ed18888ff8321c761bae36b744a015098374c616;hp=b23023ab4a424b1f7d0c247612cb2172bce46347;hpb=61d1cca103b4dc4dbbdfa0ee2b402eb619be644d;p=dbsrgits%2FDBIx-Class-Schema-Loader.git diff --git a/lib/DBIx/Class/Schema/Loader/DBI.pm b/lib/DBIx/Class/Schema/Loader/DBI.pm index b23023a..8946c99 100644 --- a/lib/DBIx/Class/Schema/Loader/DBI.pm +++ b/lib/DBIx/Class/Schema/Loader/DBI.pm @@ -124,7 +124,7 @@ sub _filter_tables { @tables = grep { /$constraint/ } @$tables if defined $constraint; @tables = grep { ! /$exclude/ } @$tables if defined $exclude; - for my $table (@tables) { + LOOP: for my $table (@tables) { try { my $sth = $self->_sth_for($table, undef, \'1 = 0'); $sth->execute; @@ -132,6 +132,8 @@ sub _filter_tables { catch { warn "Bad table or view '$table', ignoring: $_\n"; $self->_unregister_source_for_table($table); + no warnings 'exiting'; + next LOOP; }; push @filtered_tables, $table; @@ -322,7 +324,7 @@ sub _columns_info_for { my $sth = $self->_sth_for($table, undef, \'1 = 0'); $sth->execute; - my @columns = $sth->{NAME}; + my @columns = @{ $sth->{NAME} }; for my $i (0 .. $#columns) { my $column_info = {};