mirror of
https://gitlab.com/dstftw/youtube-dl.git
synced 2020-11-16 09:42:26 +00:00
Set process title to youtube-dl
This allows killing all youtube-dl processes with killall youtube-dl, and shows up nicer in some programs.
This commit is contained in:
parent
8863d0de91
commit
e3946f989e
|
@ -62,6 +62,7 @@ from .utils import (
|
||||||
MaxDownloadsReached,
|
MaxDownloadsReached,
|
||||||
preferredencoding,
|
preferredencoding,
|
||||||
SameFileError,
|
SameFileError,
|
||||||
|
setproctitle,
|
||||||
std_headers,
|
std_headers,
|
||||||
write_string,
|
write_string,
|
||||||
)
|
)
|
||||||
|
@ -471,12 +472,15 @@ def parseOpts(overrideArguments=None):
|
||||||
|
|
||||||
return parser, opts, args
|
return parser, opts, args
|
||||||
|
|
||||||
|
|
||||||
def _real_main(argv=None):
|
def _real_main(argv=None):
|
||||||
# Compatibility fixes for Windows
|
# Compatibility fixes for Windows
|
||||||
if sys.platform == 'win32':
|
if sys.platform == 'win32':
|
||||||
# https://github.com/rg3/youtube-dl/issues/820
|
# https://github.com/rg3/youtube-dl/issues/820
|
||||||
codecs.register(lambda name: codecs.lookup('utf-8') if name == 'cp65001' else None)
|
codecs.register(lambda name: codecs.lookup('utf-8') if name == 'cp65001' else None)
|
||||||
|
|
||||||
|
setproctitle(u'youtube-dl')
|
||||||
|
|
||||||
parser, opts, args = parseOpts(argv)
|
parser, opts, args = parseOpts(argv)
|
||||||
|
|
||||||
# Set user agent
|
# Set user agent
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
import ctypes
|
||||||
import datetime
|
import datetime
|
||||||
import email.utils
|
import email.utils
|
||||||
import errno
|
import errno
|
||||||
|
@ -1062,3 +1063,17 @@ def month_by_name(name):
|
||||||
def fix_xml_all_ampersand(xml_str):
|
def fix_xml_all_ampersand(xml_str):
|
||||||
"""Replace all the '&' by '&' in XML"""
|
"""Replace all the '&' by '&' in XML"""
|
||||||
return xml_str.replace(u'&', u'&')
|
return xml_str.replace(u'&', u'&')
|
||||||
|
|
||||||
|
|
||||||
|
def setproctitle(title):
|
||||||
|
try:
|
||||||
|
libc = ctypes.cdll.LoadLibrary("libc.so.6")
|
||||||
|
except OSError:
|
||||||
|
return
|
||||||
|
title = title
|
||||||
|
buf = ctypes.create_string_buffer(len(title) + 1)
|
||||||
|
buf.value = title
|
||||||
|
try:
|
||||||
|
libc.prctl(15, ctypes.byref(buf), 0, 0, 0)
|
||||||
|
except AttributeError:
|
||||||
|
return # Strange libc, just skip this
|
||||||
|
|
Loading…
Reference in a new issue