diff options
| author | Yen Chi Hsuan <yan12125@gmail.com> | 2016-06-16 11:00:54 +0800 | 
|---|---|---|
| committer | Yen Chi Hsuan <yan12125@gmail.com> | 2016-06-16 11:00:54 +0800 | 
| commit | 47212f7bcbd59af40f91796562a6b72ba0439ac4 (patch) | |
| tree | 3d4a84997db0c08a71e92973054159677be4a0de | |
| parent | 4c93ee8d14dc081d413304d2d2eb694cb62cc71a (diff) | |
[utils] Don't transform numbers not starting with a zero
Fix test_Viidea and maybe others
| -rw-r--r-- | test/test_utils.py | 3 | ||||
| -rw-r--r-- | youtube_dl/utils.py | 2 | 
2 files changed, 4 insertions, 1 deletions
diff --git a/test/test_utils.py b/test/test_utils.py index 0e25de6b7..b7ef51f8d 100644 --- a/test/test_utils.py +++ b/test/test_utils.py @@ -640,6 +640,9 @@ class TestUtil(unittest.TestCase):              "1":{"src":"skipped", "type": "application/vnd.apple.mpegURL"}          }''') +        inp = '''{"foo":101}''' +        self.assertEqual(js_to_json(inp), '''{"foo":101}''') +      def test_js_to_json_edgecases(self):          on = js_to_json("{abc_def:'1\\'\\\\2\\\\\\'3\"4'}")          self.assertEqual(json.loads(on), {"abc_def": "1'\\2\\'3\"4"}) diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py index c8308ba3a..82f67f6cd 100644 --- a/youtube_dl/utils.py +++ b/youtube_dl/utils.py @@ -1970,7 +1970,7 @@ def js_to_json(code):          '(?:[^'\\]*(?:\\\\|\\['"nurtbfx/\n]))*[^'\\]*'|          /\*.*?\*/|,(?=\s*[\]}])|          [a-zA-Z_][.a-zA-Z_0-9]*| -        (?:0[xX][0-9a-fA-F]+|0+[0-7]+)(?:\s*:)?| +        \b(?:0[xX][0-9a-fA-F]+|0+[0-7]+)(?:\s*:)?|          [0-9]+(?=\s*:)          ''', fix_kv, code)  | 
