[facet] don't crash in rset_vocabulary if an unauthorized error was raised in rqlexec
--- a/web/facet.py Mon Apr 12 19:36:51 2010 +0200
+++ b/web/facet.py Tue Apr 13 15:46:44 2010 +0200
@@ -379,7 +379,9 @@
return ()
finally:
rqlst.recover()
- return self.rset_vocabulary(rset)
+ # don't call rset_vocabulary on empty result set, it may be an empty
+ # *list* (see rqlexec implementation)
+ return rset and self.rset_vocabulary(rset)
def possible_values(self):
"""return a list of possible values (as string since it's used to
@@ -468,7 +470,9 @@
return ()
finally:
rqlst.recover()
- return self.rset_vocabulary(rset)
+ # don't call rset_vocabulary on empty result set, it may be an empty
+ # *list* (see rqlexec implementation)
+ return rset and self.rset_vocabulary(rset)
def rset_vocabulary(self, rset):
_ = self._cw._