aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Li <dvdli@google.com>2021-03-09 01:54:22 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2021-03-09 01:54:22 +0000
commit3028ab403f3d8651368efdd596033fb404a9cd84 (patch)
tree0906c962268135832de9fa33d81c5e9cad3cbe32
parentb1192f78b3aaacad4ec499f5667d0778df8f54dc (diff)
parent16d363622cb3bd0c17ce6bc020b4a07d921a5859 (diff)
downloadtinyalsa-3028ab403f3d8651368efdd596033fb404a9cd84.tar.gz
Merge "free the pcm structure and return &bad_pcm if open fails."android-s-beta-2android-s-beta-1
-rw-r--r--pcm.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/pcm.c b/pcm.c
index c885b44..1d84dc0 100644
--- a/pcm.c
+++ b/pcm.c
@@ -1062,13 +1062,11 @@ fail:
pcm->ops->munmap(pcm->data, pcm->mmap_buffer, pcm_frames_to_bytes(pcm, pcm->buffer_size));
fail_close:
pcm->ops->close(pcm->data);
- pcm->data = NULL;
- pcm->fd = -1;
fail_open:
snd_utils_put_dev_node(pcm->snd_node);
- pcm->snd_node = NULL;
- return pcm;
+ free(pcm);
+ return &bad_pcm;
}
int pcm_is_ready(struct pcm *pcm)