diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/audio_out/audio_alsa_out.c | 2 | ||||
-rw-r--r-- | src/audio_out/audio_oss_out.c | 13 |
2 files changed, 6 insertions, 9 deletions
diff --git a/src/audio_out/audio_alsa_out.c b/src/audio_out/audio_alsa_out.c index 1a26b01e9..40dc7ffed 100644 --- a/src/audio_out/audio_alsa_out.c +++ b/src/audio_out/audio_alsa_out.c @@ -138,7 +138,7 @@ static int my_snd_mixer_wait(snd_mixer_t *mixer, int timeout) { return count; if ((unsigned int) count > sizeof(spfds) / sizeof(spfds[0])) { - pfds = malloc(count * sizeof(*pfds)); + pfds = calloc(count, sizeof(*pfds)); if (!pfds) return -ENOMEM; diff --git a/src/audio_out/audio_oss_out.c b/src/audio_out/audio_oss_out.c index 5576b1d5f..b22f3344b 100644 --- a/src/audio_out/audio_oss_out.c +++ b/src/audio_out/audio_oss_out.c @@ -1035,15 +1035,12 @@ static ao_driver_t *open_plugin (audio_driver_class_t *class_gen, const void *da if ((parse = strstr(mixer_name, "dsp"))) { parse[0] = '\0'; parse += 3; - this->mixer.name = (char *)malloc(strlen(mixer_name) + sizeof("mixer") + 2); if (devname_val == 0) - sprintf(this->mixer.name, "%smixer%s", mixer_name, parse); - else { - if (mixer_num == -1) - sprintf(this->mixer.name, "%smixer", mixer_name); - else - sprintf(this->mixer.name, "%smixer%d", mixer_name, mixer_num); - } + asprintf(&this->mixer.name, "%smixer%s", mixer_name, parse); + else if (mixer_num == -1) + asprintf(&this->mixer.name, "%smixer", mixer_name); + else + asprintf(&this->mixer.name, "%smixer%d", mixer_name, mixer_num); } else { this->mixer.name = (char *)malloc(1); this->mixer.name[0] = '\0'; |