release 0.07020
[dbsrgits/DBIx-Class-Schema-Loader.git] / lib / DBIx / Class / Schema / Loader / DBI.pm
index 13de355..c1d2aac 100644 (file)
@@ -10,7 +10,7 @@ use Carp::Clan qw/^DBIx::Class/;
 use namespace::clean;
 use DBIx::Class::Schema::Loader::Table ();
 
-our $VERSION = '0.07018';
+our $VERSION = '0.07020';
 
 __PACKAGE__->mk_group_accessors('simple', qw/
     _disable_pk_detection
@@ -54,9 +54,10 @@ sub new {
         my $driver = $self->dbh->{Driver}->{Name};
 
         my $subclass = 'DBIx::Class::Schema::Loader::DBI::' . $driver;
-        if ($self->load_optional_class($subclass)) {
-            bless $self, $subclass unless $self->isa($subclass);
+        if ((not $self->isa($subclass)) && $self->load_optional_class($subclass)) {
+            bless $self, $subclass;
             $self->_rebless;
+            Class::C3::reinitialize() if $] < 5.009005;
         }
     }
 
@@ -66,7 +67,7 @@ sub new {
 
     $self->_setup;
 
-    $self;
+    return $self;
 }
 
 sub _build_quote_char {
@@ -484,7 +485,7 @@ sub _columns_info_for {
     my @columns = @{ $sth->{NAME} };
 
     COL: for my $i (0 .. $#columns) {
-        next COL if %{ $result{ $self->_lc($columns[$i]) }||{} };
+        next COL if %{ $result{ $columns[$i] }||{} };
 
         my $column_info = {};
         $column_info->{data_type} = lc $sth->{TYPE}[$i];