if (audio.device_fd)
close(audio.device_fd);
- if (IS_PARENT_PROCESS())
+ if (IS_PARENT_PROCESS() && HAS_CHILD_PROCESS())
kill(audio.mixer_pid, SIGTERM);
}
/* "ioctl()" expects pointer to 'int' value for stereo flag
(boolean is defined as 'char', which will not work here) */
unsigned int fragment_spec = 0;
- int fragment_size_query;
+ int fragment_size_query = -1;
int stereo = TRUE;
struct
{
if (leveldir_current == NULL) /* should never happen */
Error(ERR_EXIT, "leveldir_current == NULL");
+ memset(&snd_ctrl, 0, sizeof(SoundControl)); /* to make valgrind happy */
+
snd_ctrl.active = FALSE;
snd_ctrl.state = type;
snd_ctrl.data_len = strlen(set_identifier) + 1;
else if (stereo_position > SOUND_MAX_RIGHT)
stereo_position = SOUND_MAX_RIGHT;
+ memset(&snd_ctrl, 0, sizeof(SoundControl)); /* to make valgrind happy */
+
snd_ctrl.active = TRUE;
snd_ctrl.nr = nr;
snd_ctrl.volume = volume;
if (!audio.sound_available)
return;
+ memset(&snd_ctrl, 0, sizeof(SoundControl)); /* to make valgrind happy */
+
snd_ctrl.active = FALSE;
snd_ctrl.nr = nr;
snd_ctrl.state = state;