Emit canCaptureChanged on the active mode when ready-for-capture changes
[harmattan/cameraplus] / lib / qtcamgraphicsviewfinder.cpp
index 76ccad1..342255a 100644 (file)
@@ -11,6 +11,11 @@ public:
   void ensureBackend() {
     if (!renderer) {
       renderer = QtCamViewfinderRenderer::create(conf, q_ptr);
+      if (!renderer) {
+       qCritical() << "Failed to create a viewfinder renderer";
+       return;
+      }
+
       renderer->resize(q_ptr->size());
       QObject::connect(renderer, SIGNAL(updateRequested()), q_ptr, SLOT(updateRequested()));
     }
@@ -43,6 +48,10 @@ QtCamGraphicsViewfinder::~QtCamGraphicsViewfinder() {
 GstElement *QtCamGraphicsViewfinder::sinkElement() {
   d_ptr->ensureBackend();
 
+  if (!d_ptr->renderer) {
+    return 0;
+  }
+
   return d_ptr->renderer->sinkElement();
 }