LP1953044 Avoid ref to free'd array in Server child maintenance
The Server active_list array is replaced / rebuilt during child process
maintenance. Because of this, referencing the array ref can lead to the
below error if child process maintance occurs via signal mid-loop.
server: died with error Use of freed value in iteration
at /usr/lib/x86_64-linux-gnu/perl/5.28/IO/Select.pm line 70.
Avoid requiring array dereferencing on a potentially freed value by
creating a local array containing the original contents of idle_list.
Additionally, sanity check the child objects to verify they are not in
the middle of getting cleaned up.
Signed-off-by: Bill Erickson <berickxx@gmail.com>