aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYen Chi Hsuan <yan12125@gmail.com>2016-08-11 19:04:23 +0800
committerYen Chi Hsuan <yan12125@gmail.com>2016-08-11 19:04:23 +0800
commitb1927f4e8a07a7893392135a71fdb6818295bbad (patch)
treefa4f507a9fb442e101ce123ddf257d35dc880199
parent3b9323d96e2be7341d2e309124075134ec8a50ca (diff)
downloadyoutube-dl-b1927f4e8a07a7893392135a71fdb6818295bbad.tar.xz
[YoutubeDL] Disable newline conversion when writing subtitles
By default io.open() convert all '\n' occurrences to '\r\n' when writing files. If the content already contains '\r\n', it will be converted to '\r\r\n', breaking some video players.
-rwxr-xr-xyoutube_dl/YoutubeDL.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py
index fd7577bb8..e844dc98a 100755
--- a/youtube_dl/YoutubeDL.py
+++ b/youtube_dl/YoutubeDL.py
@@ -1603,6 +1603,8 @@ class YoutubeDL(object):
self.to_screen('[info] Video subtitle %s.%s is already_present' % (sub_lang, sub_format))
else:
self.to_screen('[info] Writing video subtitles to: ' + sub_filename)
+ # Use newline='' to prevent conversion of newline characters
+ # See https://github.com/rg3/youtube-dl/issues/10268
with io.open(encodeFilename(sub_filename), 'w', encoding='utf-8', newline='') as subfile:
subfile.write(sub_data)
except (OSError, IOError):