X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FCDBICompat%2FImaDBI.pm;h=f659983e16be752db984ed5742e23bd0dd183713;hb=223b8fe3185dba976b275c120ba7a07c05c06644;hp=08a72d8b54f5fc51562d6abd4ab51f46e77246cf;hpb=74b92d9a6f3501f2db4e612da228b5debb33ac30;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/CDBICompat/ImaDBI.pm b/lib/DBIx/Class/CDBICompat/ImaDBI.pm index 08a72d8..f659983 100644 --- a/lib/DBIx/Class/CDBICompat/ImaDBI.pm +++ b/lib/DBIx/Class/CDBICompat/ImaDBI.pm @@ -84,11 +84,23 @@ sub set_sql { *{"${class}::search_${name}"} = sub { my ($class, @args) = @_; - $class->sth_to_objects($class->$meth, \@args); + my $sth = $class->$meth; + $sth->execute(@args); + return $class->sth_to_objects($sth); }; } } +sub sth_to_objects { + my ($class, $sth) = @_; + my @cols = $class->_select_columns; + my @ret; + while (my @row = $sth->fetchrow_array) { + push(@ret, $class->_row_to_object(\@cols,\@row)); + } + return @ret; +} + sub transform_sql { my ($class, $sql, @args) = @_; my $table = $class->_table_name;