X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?p=dbsrgits%2FDBIx-Class.git;a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FInflateColumn.pm;h=7a8a6139e478b52662c481c86f9e27eeb3063ab6;hp=5c7f91450f6d6cb6e02fb5422fe2d09d7d305f95;hb=484c9dda865880cd4e1cda8e0117f1d073a6aa7e;hpb=c1124f1989c22df397a89045734e2876d15c395c diff --git a/lib/DBIx/Class/InflateColumn.pm b/lib/DBIx/Class/InflateColumn.pm index 5c7f914..7a8a613 100644 --- a/lib/DBIx/Class/InflateColumn.pm +++ b/lib/DBIx/Class/InflateColumn.pm @@ -67,23 +67,12 @@ sub store_inflated_column { sub new { my ($class, $attrs, @rest) = @_; $attrs ||= {}; - my %deflated; foreach my $key (keys %$attrs) { - if (exists $class->_columns->{$key}{_inflate_info}) { - $deflated{$key} = $class->_deflated_column($key, - delete $attrs->{$key}); + if (ref $attrs->{$key} && exists $class->_columns->{$key}{_inflate_info}) { + $attrs->{$key} = $class->_deflated_column($key, $attrs->{$key}); } } - return $class->NEXT::ACTUAL::new({ %$attrs, %deflated }, @rest); + return $class->NEXT::ACTUAL::new($attrs, @rest); } -# **** B0RKEN. DOESN'T GET CALLED! -#sub _cond_value { -# my ($self, $attrs, $key, $value) = @_; -# if (exists $self->_columns->{$key}) { -# $value = $self->_deflated_column($key, $value); -# } -# return $self->NEXT::ACTUAL::_cond_value($attrs, $key, $value); -#} - 1;