From 83e0f92be7c95cd12dd8f6dd3d0a64776050899e Mon Sep 17 00:00:00 2001 From: Florent Date: Wed, 9 Apr 2014 10:29:07 +0200 Subject: [PATCH] Field obj.backend in _do_complete_obj The obj.backend is traditionnaly filled by _store_result, in BackendsCall. It is to late to test the result in condition. --- weboob/tools/application/base.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/weboob/tools/application/base.py b/weboob/tools/application/base.py index 99029ba4..0ae4d1b3 100644 --- a/weboob/tools/application/base.py +++ b/weboob/tools/application/base.py @@ -247,6 +247,7 @@ class BaseApplication(object): return version def _do_complete_obj(self, backend, fields, obj): + obj.backend = backend.name if fields is None or len(fields) > 0: backend.fillobj(obj, fields) return obj @@ -254,12 +255,12 @@ class BaseApplication(object): def _do_complete_iter(self, backend, count, fields, res): modif = 0 for i, sub in enumerate(res): + sub = self._do_complete_obj(backend, fields, sub) if self.condition and not self.condition.is_valid(sub): modif += 1 else: if count and i - modif == count: raise MoreResultsAvailable() - sub = self._do_complete_obj(backend, fields, sub) yield sub def _do_complete(self, backend, count, selected_fields, function, *args, **kwargs):