fix do() when the 'backends' attribute is an empty string or an unknown type
This commit is contained in:
parent
fd846da3f7
commit
45ac367554
1 changed files with 10 additions and 7 deletions
|
|
@ -113,14 +113,15 @@ class Weboob(object):
|
||||||
@return an iterator of results
|
@return an iterator of results
|
||||||
"""
|
"""
|
||||||
backends = self.backend_instances.values()
|
backends = self.backend_instances.values()
|
||||||
if 'backends' in kwargs and kwargs['backends']:
|
if 'backends' in kwargs:
|
||||||
if isinstance(kwargs['backends'], BaseBackend):
|
_backends = kwargs.pop('backends')
|
||||||
backends = [kwargs.pop('backends')]
|
if isinstance(_backends, BaseBackend):
|
||||||
elif isinstance(kwargs['backends'], (str,unicode)) and kwargs['backends']:
|
backends = [_backends]
|
||||||
backends = [self.backend_instances[kwargs.pop('backends')]]
|
elif isinstance(_backends, (str,unicode)) and _backends:
|
||||||
elif isinstance(kwargs['backends'], (list,tuple)):
|
backends = [self.backend_instances[_backends]]
|
||||||
|
elif isinstance(_backends, (list,tuple)):
|
||||||
backends = []
|
backends = []
|
||||||
for backend in kwargs.pop('backends'):
|
for backend in _backends:
|
||||||
if isinstance(backend, (str,unicode)):
|
if isinstance(backend, (str,unicode)):
|
||||||
try:
|
try:
|
||||||
backends.append(self.backend_instances[backend])
|
backends.append(self.backend_instances[backend])
|
||||||
|
|
@ -128,6 +129,8 @@ class Weboob(object):
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
backends.append(backend)
|
backends.append(backend)
|
||||||
|
else:
|
||||||
|
warning('The "backends" value isn\'t supported: %r' % _backends)
|
||||||
|
|
||||||
if 'caps' in kwargs:
|
if 'caps' in kwargs:
|
||||||
caps = kwargs.pop('caps')
|
caps = kwargs.pop('caps')
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue