瀏覽代碼

utils.py: Workaround TypeError with Python 2.7.13 in Windows

Fixes #11540

Tested with Windows Python 2.7.12 and 2.7.13.
Ricardo Constantino 8 年之前
父節點
當前提交
2f49bcd690
共有 1 個文件被更改,包括 5 次插入0 次删除
  1. 5 0
      youtube_dl/utils.py

+ 5 - 0
youtube_dl/utils.py

@@ -1684,6 +1684,11 @@ def setproctitle(title):
         libc = ctypes.cdll.LoadLibrary('libc.so.6')
         libc = ctypes.cdll.LoadLibrary('libc.so.6')
     except OSError:
     except OSError:
         return
         return
+    except TypeError:
+        # LoadLibrary in Windows Python 2.7.13 only expects
+        # a bytestring, but since unicode_literals turns
+        # every string into a unicode string, it fails.
+        return
     title_bytes = title.encode('utf-8')
     title_bytes = title.encode('utf-8')
     buf = ctypes.create_string_buffer(len(title_bytes))
     buf = ctypes.create_string_buffer(len(title_bytes))
     buf.value = title_bytes
     buf.value = title_bytes