From: Peter Rabbitson Date: Wed, 11 Feb 2009 09:17:55 +0000 (+0000) Subject: Add missing shallow copy of seen_join X-Git-Tag: v0.08240~135 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=e1d7914f25221cf2afd532807506d4c1efd5a412;p=dbsrgits%2FDBIx-Class.git Add missing shallow copy of seen_join --- diff --git a/lib/DBIx/Class/ResultSet.pm b/lib/DBIx/Class/ResultSet.pm index 65b763f..565a17d 100644 --- a/lib/DBIx/Class/ResultSet.pm +++ b/lib/DBIx/Class/ResultSet.pm @@ -2246,7 +2246,7 @@ sub _resolved_attrs { if (my $prefetch = delete $attrs->{prefetch}) { $prefetch = $self->_merge_attr({}, $prefetch); my @pre_order; - my $seen = $attrs->{seen_join} || {}; + my $seen = { %{ $attrs->{seen_join} || {} } }; foreach my $p (ref $prefetch eq 'ARRAY' ? @$prefetch : ($prefetch)) { # bring joins back to level of current class my @prefetch = $source->resolve_prefetch(