[PATCH 2/2] audio: Avoid bad pipelines from gst_parse_launch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



gst_parse_launch may return not NULL even when error is set.
This can lead to data loss when playing or recording audio.
---
 gtk/spice-gstaudio.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gtk/spice-gstaudio.c b/gtk/spice-gstaudio.c
index df2fc8e..2b7f683 100644
--- a/gtk/spice-gstaudio.c
+++ b/gtk/spice-gstaudio.c
@@ -245,7 +245,7 @@ static void record_start(SpiceRecordChannel *channel, gint format, gint channels
                             "appsink caps=\"%s\" name=appsink", audio_caps);
 
         p->record.pipe = gst_parse_launch(pipeline, &error);
-        if (p->record.pipe == NULL) {
+        if (error != NULL || p->record.pipe == NULL) {
             g_warning("Failed to create pipeline: %s", error->message);
             goto lerr;
         }
@@ -345,7 +345,7 @@ static void playback_start(SpicePlaybackChannel *channel, gint format, gint chan
                                        "audioconvert ! audioresample ! autoaudiosink name=\"audiosink\"", audio_caps);
         SPICE_DEBUG("audio pipeline: %s", pipeline);
         p->playback.pipe = gst_parse_launch(pipeline, &error);
-        if (p->playback.pipe == NULL) {
+        if (error != NULL || p->playback.pipe == NULL) {
             g_warning("Failed to create pipeline: %s", error->message);
             goto lerr;
         }
-- 
2.1.0

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/spice-devel





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]