mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-05-29 21:37:54 -04:00
spa: alsa: pcm: spa_alsa_clear(): clear pointers
Use `spa_clear_ptr()` to ensure that all freed pointers are cleared.
This commit is contained in:
parent
bf57911b83
commit
c6b5767c8a
1 changed files with 6 additions and 6 deletions
|
|
@ -1098,12 +1098,8 @@ int spa_alsa_clear(struct state *state)
|
||||||
state->card = NULL;
|
state->card = NULL;
|
||||||
state->card_index = SPA_ID_INVALID;
|
state->card_index = SPA_ID_INVALID;
|
||||||
|
|
||||||
if ((err = snd_output_close(state->output)) < 0)
|
spa_clear_ptr(state->tag[0], free);
|
||||||
spa_log_warn(state->log, "output close failed: %s", snd_strerror(err));
|
spa_clear_ptr(state->tag[1], free);
|
||||||
fclose(state->log_file);
|
|
||||||
|
|
||||||
free(state->tag[0]);
|
|
||||||
free(state->tag[1]);
|
|
||||||
|
|
||||||
if (state->ctl) {
|
if (state->ctl) {
|
||||||
for (int i = 0; i < state->ctl_n_fds; i++) {
|
for (int i = 0; i < state->ctl_n_fds; i++) {
|
||||||
|
|
@ -1125,6 +1121,10 @@ int spa_alsa_clear(struct state *state)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((err = snd_output_close(state->output)) < 0)
|
||||||
|
spa_log_warn(state->log, "output close failed: %s", snd_strerror(err));
|
||||||
|
spa_clear_ptr(state->log_file, fclose);
|
||||||
|
|
||||||
spa_clear_ptr(state->alsa_chmap, free);
|
spa_clear_ptr(state->alsa_chmap, free);
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue