Work around lack of SIGCHLD on Windows
This only enables the SIGCHLD handler if SIGCHLD exists, such that platforms without SIGCHLD (such as windows) can still run websockify natively. See #108
This commit is contained in:
parent
d029e451cf
commit
ddcec961ec
|
@ -684,13 +684,15 @@ class WebSockifyServer(object):
|
|||
original_signals = {
|
||||
signal.SIGINT: signal.getsignal(signal.SIGINT),
|
||||
signal.SIGTERM: signal.getsignal(signal.SIGTERM),
|
||||
signal.SIGCHLD: signal.getsignal(signal.SIGCHLD),
|
||||
}
|
||||
if getattr(signal, 'SIGCHLD', None) is not None:
|
||||
original_signals[signal.SIGCHLD] = signal.getsignal(signal.SIGCHLD),
|
||||
signal.signal(signal.SIGINT, self.do_SIGINT)
|
||||
signal.signal(signal.SIGTERM, self.do_SIGTERM)
|
||||
# make sure that _cleanup is called when children die
|
||||
# by calling active_children on SIGCHLD
|
||||
signal.signal(signal.SIGCHLD, self.multiprocessing_SIGCHLD)
|
||||
if getattr(signal, 'SIGCHLD', None) is not None:
|
||||
signal.signal(signal.SIGCHLD, self.multiprocessing_SIGCHLD)
|
||||
|
||||
last_active_time = self.launch_time
|
||||
try:
|
||||
|
|
Loading…
Reference in New Issue