X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FResultSet.pm;h=defbe9aea8c0ab40efac21dda48894ca90f7c673;hb=47dba3e30a261fec0bdbeac022c161183c876f49;hp=5493b10d0d6ea1e7ab18284df95d6786d28fb964;hpb=b05e745f3ad7bf78cef8bdce3ba6b7a0a90e44fc;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/ResultSet.pm b/lib/DBIx/Class/ResultSet.pm index 5493b10..defbe9a 100644 --- a/lib/DBIx/Class/ResultSet.pm +++ b/lib/DBIx/Class/ResultSet.pm @@ -3725,7 +3725,7 @@ sub _resolved_attrs { # this is a separate structure (we don't look in {from} directly) # as the resolver needs to shift things off the lists to work # properly (identical-prefetches on different branches) - my $join_map = {}; + my $joined_node_aliases_map = {}; if (ref $attrs->{from} eq 'ARRAY') { my $start_depth = $attrs->{seen_join}{-relation_chain_depth} || 0; @@ -3737,14 +3737,14 @@ sub _resolved_attrs { my @jpath = map { keys %$_ } @{$j->[0]{-join_path}}; - my $p = $join_map; + my $p = $joined_node_aliases_map; $p = $p->{$_} ||= {} for @jpath[ ($start_depth/2) .. $#jpath]; #only even depths are actual jpath boundaries push @{$p->{-join_aliases} }, $j->[0]{-alias}; } } ( push @{$attrs->{select}}, $_->[0] ) and ( push @{$attrs->{as}}, $_->[1] ) - for $source->_resolve_prefetch( $prefetch, $alias, $join_map ); + for $source->_resolve_selection_from_prefetch( $prefetch, $joined_node_aliases_map ); }