| Message ID | 20260618123844.656396-16-barnabas.pocze@ideasonboard.com |
|---|---|
| State | Superseded |
| Headers | show |
| Series |
|
| Related | show |
On Thu, Jun 18, 2026 at 02:38:32PM +0200, Barnabás Pőcze wrote: > The `Request` class already manages the emission of that signal in > `doCancelRequest()`, so let's move the normal emission from the pipeline > handler base class while keeping the ordering of things. I like consistency. Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> > --- > src/libcamera/pipeline_handler.cpp | 2 -- > src/libcamera/request.cpp | 3 +++ > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp > index e7145c1d48..3d49f85cfa 100644 > --- a/src/libcamera/pipeline_handler.cpp > +++ b/src/libcamera/pipeline_handler.cpp > @@ -562,8 +562,6 @@ void PipelineHandler::doQueueRequests(Camera *camera) > */ > bool PipelineHandler::completeBuffer(Request *request, FrameBuffer *buffer) > { > - Camera *camera = request->_d()->camera(); > - camera->bufferCompleted.emit(request, buffer); > return request->_d()->completeBuffer(buffer); > } > > diff --git a/src/libcamera/request.cpp b/src/libcamera/request.cpp > index 5f983e0ce6..022a97f169 100644 > --- a/src/libcamera/request.cpp > +++ b/src/libcamera/request.cpp > @@ -104,6 +104,9 @@ bool Request::Private::completeBuffer(FrameBuffer *buffer) > { > LIBCAMERA_TRACEPOINT(request_complete_buffer, this, buffer); > > + Request *request = LIBCAMERA_O_PTR(); > + camera_->bufferCompleted.emit(request, buffer); > + > int ret = pending_.erase(buffer); > ASSERT(ret == 1); >
diff --git a/src/libcamera/pipeline_handler.cpp b/src/libcamera/pipeline_handler.cpp index e7145c1d48..3d49f85cfa 100644 --- a/src/libcamera/pipeline_handler.cpp +++ b/src/libcamera/pipeline_handler.cpp @@ -562,8 +562,6 @@ void PipelineHandler::doQueueRequests(Camera *camera) */ bool PipelineHandler::completeBuffer(Request *request, FrameBuffer *buffer) { - Camera *camera = request->_d()->camera(); - camera->bufferCompleted.emit(request, buffer); return request->_d()->completeBuffer(buffer); } diff --git a/src/libcamera/request.cpp b/src/libcamera/request.cpp index 5f983e0ce6..022a97f169 100644 --- a/src/libcamera/request.cpp +++ b/src/libcamera/request.cpp @@ -104,6 +104,9 @@ bool Request::Private::completeBuffer(FrameBuffer *buffer) { LIBCAMERA_TRACEPOINT(request_complete_buffer, this, buffer); + Request *request = LIBCAMERA_O_PTR(); + camera_->bufferCompleted.emit(request, buffer); + int ret = pending_.erase(buffer); ASSERT(ret == 1);
The `Request` class already manages the emission of that signal in `doCancelRequest()`, so let's move the normal emission from the pipeline handler base class while keeping the ordering of things. Signed-off-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> --- src/libcamera/pipeline_handler.cpp | 2 -- src/libcamera/request.cpp | 3 +++ 2 files changed, 3 insertions(+), 2 deletions(-)