summaryrefslogtreecommitdiffstats
path: root/src/plugins/directshow/camera
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/directshow/camera')
-rw-r--r--src/plugins/directshow/camera/dscamerasession.cpp4
-rw-r--r--src/plugins/directshow/camera/dscamerasession.h2
2 files changed, 2 insertions, 4 deletions
diff --git a/src/plugins/directshow/camera/dscamerasession.cpp b/src/plugins/directshow/camera/dscamerasession.cpp
index 3f1187baa..55ab868ce 100644
--- a/src/plugins/directshow/camera/dscamerasession.cpp
+++ b/src/plugins/directshow/camera/dscamerasession.cpp
@@ -529,12 +529,10 @@ int DSCameraSession::captureImage(const QString &fileName)
return m_imageIdCounter;
}
-void DSCameraSession::onFrameAvailable(double time, quint8 *buffer, long len)
+void DSCameraSession::onFrameAvailable(double time, const QByteArray &data)
{
// !!! Not called on the main thread
Q_UNUSED(time);
- // Deep copy, the data might be modified or freed after the callback returns
- QByteArray data(reinterpret_cast<const char *>(buffer), len);
m_presentMutex.lock();
diff --git a/src/plugins/directshow/camera/dscamerasession.h b/src/plugins/directshow/camera/dscamerasession.h
index 6b6cb49b2..90407f49e 100644
--- a/src/plugins/directshow/camera/dscamerasession.h
+++ b/src/plugins/directshow/camera/dscamerasession.h
@@ -156,7 +156,7 @@ private:
void setStatus(QCamera::Status status);
- void onFrameAvailable(double time, quint8 *buffer, long len);
+ void onFrameAvailable(double time, const QByteArray &data);
void saveCapturedImage(int id, const QImage &image, const QString &path);
bool createFilterGraph();