X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FCDBICompat%2FImaDBI.pm;h=43537ff408c5b02743880266b15e042eeab3b0ad;hb=7305f6f933813eaa1a4a7b65bfc5f158d0d65c4d;hp=0ec69938674c2d585fe4c77c91b7a128e2ec88f7;hpb=e187eecba5ad6d6d27b18e471ea8c13d9a4368b3;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/CDBICompat/ImaDBI.pm b/lib/DBIx/Class/CDBICompat/ImaDBI.pm index 0ec6993..43537ff 100644 --- a/lib/DBIx/Class/CDBICompat/ImaDBI.pm +++ b/lib/DBIx/Class/CDBICompat/ImaDBI.pm @@ -4,9 +4,11 @@ package # hide from PAUSE use strict; use warnings; use DBIx::ContextualFetch; -use DBIx::Class::_Util qw(quote_sub perlstring); -use base qw(Class::Data::Inheritable); +use base 'DBIx::Class'; + +use DBIx::Class::_Util qw(quote_sub perlstring); +use namespace::clean; __PACKAGE__->mk_classdata('sql_transformer_class' => 'DBIx::Class::CDBICompat::SQLTransformer'); @@ -50,9 +52,12 @@ sub sth_to_objects { $sth->execute(@$execute_args); - my @ret; + my (@ret, $rsrc); while (my $row = $sth->fetchrow_hashref) { - push(@ret, $class->inflate_result($class->result_source_instance, $row)); + push(@ret, $class->inflate_result( + ( $rsrc ||= $class->result_source ), + $row + )); } return @ret;