From d5a43991b61b4271b79112548dc46f3ce934f88d Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Wed, 17 Sep 2014 16:16:17 +0200 Subject: [PATCH] when getting an object, if at least one is found, display errors but correctly return the found object --- weboob/tools/application/repl.py | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/weboob/tools/application/repl.py b/weboob/tools/application/repl.py index 514d922a22..38b4ea372d 100644 --- a/weboob/tools/application/repl.py +++ b/weboob/tools/application/repl.py @@ -260,11 +260,18 @@ def get_object(self, _id, method, fields=None, caps=None): if getattr(actual_backend, method, None) is not None: new_backend_names.append(backend) backend_names = tuple(new_backend_names) - for backend, objiter in self.do(method, _id, backends=backend_names, fields=fields, **kargs): - if objiter: - obj = objiter - if objiter.id == _id: - return obj + try: + for backend, objiter in self.do(method, _id, backends=backend_names, fields=fields, **kargs): + if objiter: + obj = objiter + if objiter.id == _id: + return obj + except CallErrors as e: + if obj is not None: + self.bcall_errors_handler(e) + else: + raise + return obj def get_object_list(self, method=None, *args, **kwargs): -- GitLab