aboutsummaryrefslogtreecommitdiff
path: root/youtube_dl/jsinterp.py
diff options
context:
space:
mode:
Diffstat (limited to 'youtube_dl/jsinterp.py')
-rw-r--r--youtube_dl/jsinterp.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/youtube_dl/jsinterp.py b/youtube_dl/jsinterp.py
index 1ba9c3d67..882432b80 100644
--- a/youtube_dl/jsinterp.py
+++ b/youtube_dl/jsinterp.py
@@ -277,9 +277,20 @@ class JSInterpreter(object):
def __getattr__(self, name):
self.__instantiate()
+ # make Py 2.6 conform to its lying documentation
+ if name == 'flags':
+ self.flags = self.__flags
+ elif name == 'pattern':
+ self.pattern = self.__pattern_txt
+ elif name in ('groupindex', 'groups'):
+ # in case these get set after a match?
+ if hasattr(self.__self, name):
+ setattr(self, name, getattr(self.__self, name))
+ else:
+ return 0 if name == 'groupindex' else {}
if hasattr(self, name):
return getattr(self, name)
- return super(JSInterpreter.JS_RegExp, self).__getattr__(name)
+ raise AttributeError('{0} has no attribute named {1}'.format(self, name))
@classmethod
def regex_flags(cls, expr):