From 41989e358c89f96fd789d7d3604aceb0e041e4a0 Mon Sep 17 00:00:00 2001 From: Thiago Santos Date: Wed, 3 Aug 2011 15:21:17 -0300 Subject: [PATCH] camerabin2: add more missing plugin checks Sprinkle some more missing plugin checks around --- gst/camerabin2/gstcamerabin2.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gst/camerabin2/gstcamerabin2.c b/gst/camerabin2/gstcamerabin2.c index 0464ca0d72..8d799277bf 100644 --- a/gst/camerabin2/gstcamerabin2.c +++ b/gst/camerabin2/gstcamerabin2.c @@ -1143,6 +1143,10 @@ gst_camera_bin_create_elements (GstCameraBin2 * camera) camera->videosink = gst_element_factory_make ("filesink", "videobin-filesink"); + if (!camera->videosink) { + missing_element_name = "filesink"; + goto missing_element; + } g_object_set (camera->videosink, "async", FALSE, NULL); /* audio elements */ @@ -1223,6 +1227,10 @@ gst_camera_bin_create_elements (GstCameraBin2 * camera) camera->viewfinderbin_queue = gst_element_factory_make ("queue", "viewfinderbin-queue"); + if (!camera->viewfinderbin_queue) { + missing_element_name = "queue"; + goto missing_element; + } g_object_set (camera->viewfinderbin_queue, "leaky", 2, "silent", TRUE, NULL); @@ -1390,6 +1398,10 @@ gst_camera_bin_create_elements (GstCameraBin2 * camera) } else { camera->audio_src = gst_element_factory_make (DEFAULT_AUDIO_SRC, "audiosrc"); + if (!camera->audio_src) { + missing_element_name = DEFAULT_AUDIO_SRC; + goto missing_element; + } } gst_element_set_locked_state (camera->audio_src, TRUE);