async: Handle previously installed signal handler
async: Handle previously installed signal handler

The issue is with the signal handler installed and deinstalled in
alsa-lib async handler.  This code makes no attempt to remember any
previously installed signal handlers for SIGIO, if SIGIO is used.
Consequently it does not call any previous handlers from its own
handler once installed, and does not reinstall any previous handler
when deinstalling its handler.  Consequently, use of also-lib within
applications that depend on SIGIO will break those applications,
rendering them inoperative once alsa-lib is running because their
signal handlers are no longer called.

This patch does remember and restore any previous handler, and chains
calls to the handler if it exists.

Signed-off-by: Takashi Iwai <4596b3305151c7ee743192a95d394341e3d3b644@suse.de>

takaswie/alsa-lib,alsa-project/alsa-lib,takaswie/alsa-lib,tiwai/alsa-lib,alsa-project/alsa-lib,tiwai/alsa-lib,takaswie/alsa-lib,zedongchen/alsa-lib,tiwai/alsa-lib,zedongchen/alsa-lib,takaswie/alsa-lib,takaswie/alsa-lib,alsa-project/alsa-lib,zedongchen/alsa-lib,tiwai/alsa-lib,zedongchen/alsa-lib,alsa-project/alsa-lib,zedongchen/alsa-lib