summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libcamera/bound_method.cpp6
-rw-r--r--src/libcamera/object.cpp7
2 files changed, 3 insertions, 10 deletions
diff --git a/src/libcamera/bound_method.cpp b/src/libcamera/bound_method.cpp
index 60071736..4c0cd415 100644
--- a/src/libcamera/bound_method.cpp
+++ b/src/libcamera/bound_method.cpp
@@ -48,7 +48,7 @@ namespace libcamera {
* deadlock will occur.
*/
-void BoundMethodBase::activatePack(void *pack)
+void BoundMethodBase::activatePack(void *pack, bool deleteMethod)
{
ConnectionType type = connectionType_;
if (type == ConnectionTypeAuto) {
@@ -66,7 +66,7 @@ void BoundMethodBase::activatePack(void *pack)
case ConnectionTypeQueued: {
std::unique_ptr<Message> msg =
- utils::make_unique<InvokeMessage>(this, pack);
+ utils::make_unique<InvokeMessage>(this, pack, nullptr, deleteMethod);
object_->postMessage(std::move(msg));
break;
}
@@ -75,7 +75,7 @@ void BoundMethodBase::activatePack(void *pack)
Semaphore semaphore;
std::unique_ptr<Message> msg =
- utils::make_unique<InvokeMessage>(this, pack, &semaphore);
+ utils::make_unique<InvokeMessage>(this, pack, &semaphore, deleteMethod);
object_->postMessage(std::move(msg));
semaphore.acquire();
diff --git a/src/libcamera/object.cpp b/src/libcamera/object.cpp
index b0818f9a..509b2eba 100644
--- a/src/libcamera/object.cpp
+++ b/src/libcamera/object.cpp
@@ -153,13 +153,6 @@ void Object::message(Message *msg)
* remains valid until the method is invoked.
*/
-void Object::invokeMethod(BoundMethodBase *method, void *args)
-{
- std::unique_ptr<Message> msg =
- utils::make_unique<InvokeMessage>(method, args, nullptr, true);
- postMessage(std::move(msg));
-}
-
/**
* \fn Object::thread()
* \brief Retrieve the thread the object is bound to