diff options
Diffstat (limited to 'src/plugins/directshow/camera')
-rw-r--r-- | src/plugins/directshow/camera/dscamerasession.cpp | 4 | ||||
-rw-r--r-- | src/plugins/directshow/camera/dscamerasession.h | 2 |
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(); |