summary refs log tree commit diff
diff options
context:
space:
mode:
authorRicardo Garcia <sarbalap+freshmeat@gmail.com>2009-09-20 00:08:50 +0200
committerRicardo Garcia <sarbalap+freshmeat@gmail.com>2010-10-31 11:24:56 +0100
commitf94b636c3ec6410570e5d384e66d651a89de6abe (patch)
tree777a3d750153ce259fd6f3cc10e9c4513a9d3e10
parent0833f1eb839a6677ec2e850c763b84164df30433 (diff)
downloadyoutube-dl-f94b636c3ec6410570e5d384e66d651a89de6abe.tar.gz
youtube-dl-f94b636c3ec6410570e5d384e66d651a89de6abe.tar.xz
youtube-dl-f94b636c3ec6410570e5d384e66d651a89de6abe.zip
Improve preferred encoding detection method
-rwxr-xr-xyoutube-dl18
1 files changed, 9 insertions, 9 deletions
diff --git a/youtube-dl b/youtube-dl
index b1f271793..5efc55e6d 100755
--- a/youtube-dl
+++ b/youtube-dl
@@ -33,15 +33,15 @@ def preferredencoding():
 	Returns the best encoding scheme for the system, based on
 	locale.getpreferredencoding() and some further tweaks.
 	"""
-	try:
-		pref = locale.getpreferredencoding()
-		# Mac OSX systems have this problem sometimes
-		if pref == '':
-			return 'UTF-8'
-		return pref
-	except:
-		sys.stderr.write('WARNING: problem obtaining preferred encoding. Falling back to UTF-8.\n')
-		return 'UTF-8'
+	def yield_preferredencoding():
+		try:
+			pref = locale.getpreferredencoding()
+			u'TEST'.encode(pref)
+		except:
+			pref = 'UTF-8'
+		while True:
+			yield pref
+	return yield_preferredencoding().next()
 
 class DownloadError(Exception):
 	"""Download Error exception.