From 37ee281d133eebb36163f77d04c1451f2bbfd211 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Thu, 26 Aug 2010 13:44:49 +0200 Subject: [PATCH] pulsesink: Fail gracefully if no threaded PA mainloop can be created Fixes bug #628020. --- ext/pulse/pulsesink.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ext/pulse/pulsesink.c b/ext/pulse/pulsesink.c index eec5f8ec5f..ea15df93d9 100644 --- a/ext/pulse/pulsesink.c +++ b/ext/pulse/pulsesink.c @@ -2606,7 +2606,11 @@ gst_pulsesink_change_state (GstElement * element, GstStateChange transition) case GST_STATE_CHANGE_NULL_TO_READY: g_assert (pulsesink->mainloop == NULL); pulsesink->mainloop = pa_threaded_mainloop_new (); - g_assert (pulsesink->mainloop != NULL); + if (!pulsesink->mainloop) { + GST_ELEMENT_ERROR (pulsesink, RESOURCE, FAILED, + ("pa_threaded_mainloop_new() failed"), (NULL)); + return GST_STATE_CHANGE_FAILURE; + } res = pa_threaded_mainloop_start (pulsesink->mainloop); g_assert (res == 0);