about summary refs log tree commit homepage
path: root/script
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2014-01-29 08:43:22 +0000
committerEric Wong <normalperson@yhbt.net>2014-01-29 08:43:41 +0000
commitcce86f545998d16e4e5d4160aa6f1beed8a2df80 (patch)
tree198f6111b58f8127756a5cbc157fc04c68a48376 /script
parent5ae77e8ce4c439cdfdf1cbaee6a74fcda0b468b1 (diff)
downloadunicorn-4.8.1.tar.gz
fix races/error handling in worker SIGQUIT handler

This protects us from two problems:

1) we (or our app) somehow called IO#close on one of the sockets
   we listen on without removing it from the readers array.
   We'll ignore IOErrors from IO#close and assume we wanted to
   close it.

2) our SIGQUIT handler is interrupted by itself.  This can happen as
   a fake signal from the master could be handled and a real signal
   from an outside user is sent to us (e.g. from unicorn-worker-killer)
   or if a user uses the killall(1) command.
Diffstat (limited to 'script')
0 files changed, 0 insertions, 0 deletions