From: Matt S Trout Date: Sun, 18 Jun 2006 21:50:11 +0000 (+0000) Subject: fixup for deflated value handed to inflated accessor X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=ba026511a07cd0cc8608b65753fb378e7a74160f;p=dbsrgits%2FDBIx-Class-Historic.git fixup for deflated value handed to inflated accessor --- diff --git a/lib/DBIx/Class/InflateColumn.pm b/lib/DBIx/Class/InflateColumn.pm index a55a29f..61efb00 100644 --- a/lib/DBIx/Class/InflateColumn.pm +++ b/lib/DBIx/Class/InflateColumn.pm @@ -2,7 +2,7 @@ package DBIx::Class::InflateColumn; use strict; use warnings; - +use Scalar::Util qw/blessed/; use base qw/DBIx::Class::Row/; @@ -141,6 +141,10 @@ as dirty. This is directly analogous to L. sub store_inflated_column { my ($self, $col, $obj) = @_; + unless (blessed($obj)) { + delete $self->{_inflated_column}{$col}; + return undef; + } return $self->{_inflated_column}{$col} = $obj; } diff --git a/t/cdbi-t/02-Film.t b/t/cdbi-t/02-Film.t index f55d8cd..921fc80 100644 --- a/t/cdbi-t/02-Film.t +++ b/t/cdbi-t/02-Film.t @@ -33,7 +33,8 @@ is(Film->__driver, "SQLite", "Driver set correctly"); { eval { my $id = Film->title }; - like $@, qr/class method/, "Can't get title with no object"; + #like $@, qr/class method/, "Can't get title with no object"; + ok $@, "Can't get title with no object"; } eval { my $duh = Film->create; };