diff --git a/ChangeLog b/ChangeLog index 341c6980df52fff41cfc0519473b417ab9858e83_Q2hhbmdlTG9n..6405b59a8355371fadfa076dd480cb08af36f6d1_Q2hhbmdlTG9n 100644 --- a/ChangeLog +++ b/ChangeLog @@ -11,6 +11,9 @@ * fix subquery_selection_index responsability mess-up: it wasn't doing what it should have done (see cw.rset related_entity implementation) + * consider subquery aliases in Select.clean_solutions + + 2010-08-02 -- 0.26.5 * fix solutions computation crash with some query using sub-queries (closes #37423) diff --git a/stmts.py b/stmts.py index 341c6980df52fff41cfc0519473b417ab9858e83_c3RtdHMucHk=..6405b59a8355371fadfa076dd480cb08af36f6d1_c3RtdHMucHk= 100644 --- a/stmts.py +++ b/stmts.py @@ -626,7 +626,7 @@ solutions = self.solutions # this may occurs with rql optimization, for instance on # 'Any X WHERE X eid 12' query - if not self.defined_vars: + if not (self.defined_vars or self.aliases): self.solutions = [{}] else: newsolutions = [] @@ -634,6 +634,8 @@ asol = {} for var in self.defined_vars: asol[var] = origsol[var] + for var in self.aliases: + asol[var] = origsol[var] if not asol in newsolutions: newsolutions.append(asol) self.solutions = newsolutions