summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/libcamera/request.h2
-rw-r--r--src/android/camera_device.cpp2
-rw-r--r--src/cam/capture.cpp4
-rw-r--r--src/libcamera/request.cpp4
-rw-r--r--src/qcam/main_window.cpp4
-rw-r--r--src/v4l2/v4l2_camera.cpp2
-rw-r--r--test/camera/buffer_import.cpp2
-rw-r--r--test/camera/capture.cpp4
-rw-r--r--test/camera/statemachine.cpp2
9 files changed, 13 insertions, 13 deletions
diff --git a/include/libcamera/request.h b/include/libcamera/request.h
index 728f380d..b8324224 100644
--- a/include/libcamera/request.h
+++ b/include/libcamera/request.h
@@ -39,7 +39,7 @@ public:
ControlList &controls() { return *controls_; }
ControlList &metadata() { return *metadata_; }
const std::map<Stream *, Buffer *> &buffers() const { return bufferMap_; }
- int addBuffer(std::unique_ptr<Buffer> buffer);
+ int addBuffer(Stream *stream, std::unique_ptr<Buffer> buffer);
Buffer *findBuffer(Stream *stream) const;
uint64_t cookie() const { return cookie_; }
diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
index 065e0292..09588c16 100644
--- a/src/android/camera_device.cpp
+++ b/src/android/camera_device.cpp
@@ -754,7 +754,7 @@ void CameraDevice::processCaptureRequest(camera3_capture_request_t *camera3Reque
Request *request =
camera_->createRequest(reinterpret_cast<uint64_t>(descriptor));
- request->addBuffer(std::move(buffer));
+ request->addBuffer(stream, std::move(buffer));
int ret = camera_->queueRequest(request);
if (ret) {
diff --git a/src/cam/capture.cpp b/src/cam/capture.cpp
index 4b65b1d0..1a4dbe7c 100644
--- a/src/cam/capture.cpp
+++ b/src/cam/capture.cpp
@@ -95,7 +95,7 @@ int Capture::capture(EventLoop *loop)
Stream *stream = cfg.stream();
std::unique_ptr<Buffer> buffer = stream->createBuffer(i);
- ret = request->addBuffer(std::move(buffer));
+ ret = request->addBuffer(stream, std::move(buffer));
if (ret < 0) {
std::cerr << "Can't set buffer for request"
<< std::endl;
@@ -185,7 +185,7 @@ void Capture::requestComplete(Request *request)
return;
}
- request->addBuffer(std::move(newBuffer));
+ request->addBuffer(stream, std::move(newBuffer));
}
camera_->queueRequest(request);
diff --git a/src/libcamera/request.cpp b/src/libcamera/request.cpp
index 92330c1a..54dfb461 100644
--- a/src/libcamera/request.cpp
+++ b/src/libcamera/request.cpp
@@ -113,6 +113,7 @@ Request::~Request()
/**
* \brief Store a Buffer with its associated Stream in the Request
+ * \param[in] stream The stream the buffer belongs to
* \param[in] buffer The Buffer to store in the request
*
* Ownership of the buffer is passed to the request. It will be deleted when
@@ -125,9 +126,8 @@ Request::~Request()
* \retval -EEXIST The request already contains a buffer for the stream
* \retval -EINVAL The buffer does not reference a valid Stream
*/
-int Request::addBuffer(std::unique_ptr<Buffer> buffer)
+int Request::addBuffer(Stream *stream, std::unique_ptr<Buffer> buffer)
{
- Stream *stream = buffer->stream();
if (!stream) {
LOG(Request, Error) << "Invalid stream reference";
return -EINVAL;
diff --git a/src/qcam/main_window.cpp b/src/qcam/main_window.cpp
index 0a353e8b..8b3d9923 100644
--- a/src/qcam/main_window.cpp
+++ b/src/qcam/main_window.cpp
@@ -191,7 +191,7 @@ int MainWindow::startCapture()
goto error;
}
- ret = request->addBuffer(std::move(buffer));
+ ret = request->addBuffer(stream, std::move(buffer));
if (ret < 0) {
std::cerr << "Can't set buffer for request" << std::endl;
goto error;
@@ -289,7 +289,7 @@ void MainWindow::requestComplete(Request *request)
return;
}
- request->addBuffer(std::move(newBuffer));
+ request->addBuffer(stream, std::move(newBuffer));
}
camera_->queueRequest(request);
diff --git a/src/v4l2/v4l2_camera.cpp b/src/v4l2/v4l2_camera.cpp
index 7221755d..b6e0bb76 100644
--- a/src/v4l2/v4l2_camera.cpp
+++ b/src/v4l2/v4l2_camera.cpp
@@ -192,7 +192,7 @@ int V4L2Camera::qbuf(unsigned int index)
return -ENOMEM;
}
- int ret = request->addBuffer(std::move(buffer));
+ int ret = request->addBuffer(stream, std::move(buffer));
if (ret < 0) {
LOG(V4L2Compat, Error) << "Can't set buffer for request";
return -ENOMEM;
diff --git a/test/camera/buffer_import.cpp b/test/camera/buffer_import.cpp
index 171540ed..e5c010d8 100644
--- a/test/camera/buffer_import.cpp
+++ b/test/camera/buffer_import.cpp
@@ -268,7 +268,7 @@ public:
Request *request = camera_->createRequest(cookie);
std::unique_ptr<Buffer> buffer = stream_->createBuffer({ dmabuf, -1, -1 });
- request->addBuffer(move(buffer));
+ request->addBuffer(stream_, move(buffer));
camera_->queueRequest(request);
}
diff --git a/test/camera/capture.cpp b/test/camera/capture.cpp
index 7cb76038..ca1ebe41 100644
--- a/test/camera/capture.cpp
+++ b/test/camera/capture.cpp
@@ -49,7 +49,7 @@ protected:
std::unique_ptr<Buffer> newBuffer = stream->createBuffer(buffer->index());
request = camera_->createRequest();
- request->addBuffer(std::move(newBuffer));
+ request->addBuffer(stream, std::move(newBuffer));
camera_->queueRequest(request);
}
@@ -101,7 +101,7 @@ protected:
return TestFail;
}
- if (request->addBuffer(std::move(buffer))) {
+ if (request->addBuffer(stream, std::move(buffer))) {
cout << "Failed to associating buffer with request" << endl;
return TestFail;
}
diff --git a/test/camera/statemachine.cpp b/test/camera/statemachine.cpp
index afa13ba7..f627b8f3 100644
--- a/test/camera/statemachine.cpp
+++ b/test/camera/statemachine.cpp
@@ -219,7 +219,7 @@ protected:
Stream *stream = *camera_->streams().begin();
std::unique_ptr<Buffer> buffer = stream->createBuffer(0);
- if (request->addBuffer(std::move(buffer)))
+ if (request->addBuffer(stream, std::move(buffer)))
return TestFail;
if (camera_->queueRequest(request))