X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FRelationship%2FBase.pm;h=53dc14cd143a8e1f2f8c204ab2530f0f5b25b724;hb=f43ea814d6c4c181aeaac244c5db17058aac3d5e;hp=e53311768c589d18ca5c78913b4e633b42dbcf44;hpb=ed7ab0f4ce1a9118ea6285ee562ef003085a6b64;p=dbsrgits%2FDBIx-Class-Historic.git diff --git a/lib/DBIx/Class/Relationship/Base.pm b/lib/DBIx/Class/Relationship/Base.pm index e533117..53dc14c 100644 --- a/lib/DBIx/Class/Relationship/Base.pm +++ b/lib/DBIx/Class/Relationship/Base.pm @@ -238,15 +238,15 @@ sub related_resultset { # condition resolution may fail if an incomplete master-object prefetch # is encountered - that is ok during prefetch construction (not yet in_storage) - my $cond; - try { $cond = $source->_resolve_condition( $rel_info->{cond}, $rel, $self ) } + my $cond = try { + $source->_resolve_condition( $rel_info->{cond}, $rel, $self ) + } catch { if ($self->in_storage) { $self->throw_exception ($_); } - else { - $cond = $DBIx::Class::ResultSource::UNRESOLVABLE_CONDITION; - } + + $DBIx::Class::ResultSource::UNRESOLVABLE_CONDITION; # RV }; if ($cond eq $DBIx::Class::ResultSource::UNRESOLVABLE_CONDITION) {