diff options
Diffstat (limited to 'youtube_dl/utils.py')
-rw-r--r-- | youtube_dl/utils.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index 91e180326..8f856ee8c 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -8,6 +8,7 @@ import locale import os import re import sys +import traceback import zlib import email.utils import json @@ -414,12 +415,15 @@ def encodeFilename(s): class ExtractorError(Exception): """Error during info extraction.""" def __init__(self, msg, tb=None): - """ tb is the original traceback (so that it can be printed out) """ + """ tb, if given, is the original traceback (so that it can be printed out). """ super(ExtractorError, self).__init__(msg) - if tb is None: - tb = sys.exc_info()[2] self.traceback = tb + def format_traceback(self): + if self.traceback is None: + return None + return u''.join(traceback.format_tb(self.traceback)) + class DownloadError(Exception): """Download Error exception. |