From: Mohammed Sameer Date: Thu, 12 Sep 2013 00:37:38 +0000 (+0300) Subject: Move qt_cam_copy_register to QtCamera X-Git-Url: http://cgit.sxemacs.org/?p=harmattan%2Fcameraplus;a=commitdiff_plain;h=f16f2d7afbd39e1adeb193031b3be10279e3cb85 Move qt_cam_copy_register to QtCamera This makes sure we register it once per application instead of once per device. --- diff --git a/lib/qtcamdevice.cpp b/lib/qtcamdevice.cpp index 38da29b..ed00c5e 100644 --- a/lib/qtcamdevice.cpp +++ b/lib/qtcamdevice.cpp @@ -29,7 +29,6 @@ #include "qtcamimagemode.h" #include "qtcamvideomode.h" #include "qtcamnotifications.h" -#include "gst/gstcopy.h" #include "qtcampropertysetter.h" #include "qtcamanalysisbin.h" @@ -37,12 +36,6 @@ QtCamDevice::QtCamDevice(QtCamConfig *config, const QString& name, const QVariant& id, QObject *parent) : QObject(parent), d_ptr(new QtCamDevicePrivate) { - static gboolean register_copy = TRUE; - if (register_copy) { - qt_cam_copy_register(); - register_copy = FALSE; - } - d_ptr->q_ptr = this; d_ptr->name = name; d_ptr->id = id; diff --git a/lib/qtcamera.cpp b/lib/qtcamera.cpp index 6fc24d7..97f4304 100644 --- a/lib/qtcamera.cpp +++ b/lib/qtcamera.cpp @@ -22,6 +22,7 @@ #include "qtcamscanner.h" #include "qtcamconfig.h" #include "qtcamdevice.h" +#include "gst/gstcopy.h" #include class QtCameraPrivate { @@ -34,6 +35,7 @@ QtCamera::QtCamera(QObject *parent) : QObject(parent), d_ptr(new QtCameraPrivate) { gst_init(0, 0); + qt_cam_copy_register(); d_ptr->conf = new QtCamConfig(this); d_ptr->scanner = new QtCamScanner(d_ptr->conf, this); @@ -45,6 +47,7 @@ QtCamera::QtCamera(const QString& configPath, QObject *parent) : QObject(parent), d_ptr(new QtCameraPrivate) { gst_init(0, 0); + qt_cam_copy_register(); d_ptr->conf = new QtCamConfig(configPath, this); d_ptr->scanner = new QtCamScanner(d_ptr->conf, this); @@ -56,6 +59,7 @@ QtCamera::QtCamera(QtCamConfig *config, QObject *parent) : QObject(parent), d_ptr(new QtCameraPrivate) { gst_init(0, 0); + qt_cam_copy_register(); d_ptr->conf = config; d_ptr->scanner = new QtCamScanner(d_ptr->conf, this);