Skip to content

Commit

Permalink
lazy extractors: Initialize the real info extractor
Browse files Browse the repository at this point in the history
According to the docs '__init__' is only called automatically if '__new__' returns an instance of the original class.
  • Loading branch information
jaimeMF committed Apr 8, 2016
1 parent e0986e3 commit 8a5dc1c
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions devscripts/lazy_load_template.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@ class LazyLoadExtractor(object):
def ie_key(cls):
return cls.__name__[:-2]

def __new__(cls):
def __new__(cls, *args, **kwargs):
mod = __import__(cls._module, fromlist=(cls.__name__,))
real_cls = getattr(mod, cls.__name__)
return real_cls.__new__(real_cls)
instance = real_cls.__new__(real_cls)
instance.__init__(*args, **kwargs)
return instance

0 comments on commit 8a5dc1c

Please sign in to comment.