summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-04-13 00:41:09 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-04-17 00:52:57 +0300
commitab8db44efb09c54c402d027bbf980b0249958429 (patch)
tree91e8ffa4995507f560fcf4757c46c22f6a2e2351
parent1ad214dd1b353e79923ec6d6dfd4246759e99407 (diff)
libcamera: signal: Fix return value template type of BoundMethodMember
The BoundMethodMember instance created in Signal::connect() for receivers inheriting from the Object class incorrectly sets the return type to void instead of R. This doesn't cause any functional issue as the return type is ignored anyway for signals, but should be fixed nonetheless. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--include/libcamera/signal.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/libcamera/signal.h b/include/libcamera/signal.h
index 5bcd7a77..3233529a 100644
--- a/include/libcamera/signal.h
+++ b/include/libcamera/signal.h
@@ -49,7 +49,7 @@ public:
ConnectionType type = ConnectionTypeAuto)
{
Object *object = static_cast<Object *>(obj);
- SignalBase::connect(new BoundMethodMember<T, void, Args...>(obj, object, func, type));
+ SignalBase::connect(new BoundMethodMember<T, R, Args...>(obj, object, func, type));
}
template<typename T, typename R, typename std::enable_if_t<!std::is_base_of<Object, T>::value> * = nullptr>