diff options
author | Silvio Lazzeretti <silviola@amazon.com> | 2020-07-15 10:39:33 +0200 |
---|---|---|
committer | GStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2020-09-25 10:35:17 +0000 |
commit | 274fdf2bbce92f749ff794461c2d73cc202a242a (patch) | |
tree | 862855593370089da4b86a84a665fa9070b4ff91 | |
parent | 4889cff7839d385610c6a56be79d705796f40d12 (diff) | |
download | gstreamer-plugins-bad-274fdf2bbce92f749ff794461c2d73cc202a242a.tar.gz |
wasapi: added missing lock release in case of error in gst_wasapi_xxx_reset
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1606>
-rw-r--r-- | sys/wasapi/gstwasapisink.c | 5 | ||||
-rw-r--r-- | sys/wasapi/gstwasapisrc.c | 5 |
2 files changed, 6 insertions, 4 deletions
diff --git a/sys/wasapi/gstwasapisink.c b/sys/wasapi/gstwasapisink.c index d21c42f90..f7c4fe68f 100644 --- a/sys/wasapi/gstwasapisink.c +++ b/sys/wasapi/gstwasapisink.c @@ -715,11 +715,12 @@ gst_wasapi_sink_reset (GstAudioSink * asink) GST_OBJECT_LOCK (self); hr = IAudioClient_Stop (self->client); - HR_FAILED_AND (hr, IAudioClient::Stop,); + HR_FAILED_AND (hr, IAudioClient::Stop, goto err); hr = IAudioClient_Reset (self->client); - HR_FAILED_AND (hr, IAudioClient::Reset,); + HR_FAILED_AND (hr, IAudioClient::Reset, goto err); +err: self->client_needs_restart = TRUE; GST_OBJECT_UNLOCK (self); } diff --git a/sys/wasapi/gstwasapisrc.c b/sys/wasapi/gstwasapisrc.c index 2286b0da9..4f63edce0 100644 --- a/sys/wasapi/gstwasapisrc.c +++ b/sys/wasapi/gstwasapisrc.c @@ -689,11 +689,12 @@ gst_wasapi_src_reset (GstAudioSrc * asrc) GST_OBJECT_LOCK (self); hr = IAudioClient_Stop (self->client); - HR_FAILED_RET (hr, IAudioClock::Stop,); + HR_FAILED_AND (hr, IAudioClock::Stop, goto err); hr = IAudioClient_Reset (self->client); - HR_FAILED_RET (hr, IAudioClock::Reset,); + HR_FAILED_AND (hr, IAudioClock::Reset, goto err); +err: self->client_needs_restart = TRUE; GST_OBJECT_UNLOCK (self); } |