summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2013-06-18 11:38:05 +0200
committerHans de Goede <hdegoede@redhat.com>2013-09-17 14:37:43 +0200
commite3480dd3e55665e9e48a39a74fd7ee4e56bc0736 (patch)
tree420e98c68dd2fd510514e572fbcc3f0dded4e678
parent6ddb9d4fd4ccf98028c83b924705f66753a16524 (diff)
cheese_camera_get_camera_devices: Allow calling before cheese_camera_setup()
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-rw-r--r--libcheese/cheese-camera.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libcheese/cheese-camera.c b/libcheese/cheese-camera.c
index ab5490d..de066af 100644
--- a/libcheese/cheese-camera.c
+++ b/libcheese/cheese-camera.c
@@ -363,6 +363,9 @@ cheese_camera_detect_camera_devices (CheeseCamera *camera)
{
CheeseCameraPrivate *priv = camera->priv;
+ if (priv->monitor)
+ return; /* Camera devices already detected */
+
priv->num_camera_devices = 0;
priv->camera_devices = g_ptr_array_new_with_free_func ((GDestroyNotify) g_object_unref);
@@ -1649,13 +1652,11 @@ cheese_camera_setup (CheeseCamera *camera, const gchar *uuid, GError **error)
GPtrArray *
cheese_camera_get_camera_devices (CheeseCamera *camera)
{
- CheeseCameraPrivate *priv;
-
g_return_val_if_fail (CHEESE_IS_CAMERA (camera), NULL);
- priv = camera->priv;
+ cheese_camera_detect_camera_devices (camera);
- return g_ptr_array_ref (priv->camera_devices);
+ return g_ptr_array_ref (camera->priv->camera_devices);
}
/**