From 305be73f672c69595da0b6587f52cf6877dad91a Mon Sep 17 00:00:00 2001
From: Emmanuel Lepage Vallee <emmanuel.lepage@savoirfairelinux.com>
Date: Wed, 23 Apr 2014 21:53:20 +0200
Subject: [PATCH] [ #45992 ] Remove a potential double-free issue, simplify the
 video rendering process

---
 src/videorenderer.cpp | 5 +++--
 src/videorenderer.h   | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/videorenderer.cpp b/src/videorenderer.cpp
index 02355885..485d7ec0 100644
--- a/src/videorenderer.cpp
+++ b/src/videorenderer.cpp
@@ -319,9 +319,10 @@ bool VideoRenderer::isRendering()
 }
 
 ///Return the current framerate
-QByteArray VideoRenderer::currentFrame()
+const QByteArray& VideoRenderer::currentFrame()
 {
-   return m_Frame[m_FrameIdx];
+   static QByteArray empty;
+   return m_isRendering?m_Frame[m_FrameIdx]:empty;
 }
 
 ///Return the current resolution
diff --git a/src/videorenderer.h b/src/videorenderer.h
index cff3189f..79033e2d 100644
--- a/src/videorenderer.h
+++ b/src/videorenderer.h
@@ -52,7 +52,7 @@ class LIB_EXPORT VideoRenderer : public QObject {
       //Getters
       const char* rawData         ()      ;
       bool        isRendering     ()      ;
-      QByteArray  currentFrame    ()      ;
+      const QByteArray& currentFrame    ()      ;
       Resolution  activeResolution()      ;
       QMutex*     mutex           ()      ;
       int         fps             () const;
-- 
GitLab