[libcamera-devel,v6,3/9] android: metadata: Fix addEntry template type
diff mbox series

Message ID 20210730103536.81117-4-paul.elder@ideasonboard.com
State Accepted
Headers show
Series
  • android: Support capability and hardware level detection
Related show

Commit Message

Paul Elder July 30, 2021, 10:35 a.m. UTC
Since we set entries with android tags directly, which are enums and not
arithmetic types, the addEntry template fails to match. Fix this by also
allowing enum values in addEntry.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

---
New in v4
---
 src/android/camera_metadata.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Patch
diff mbox series

diff --git a/src/android/camera_metadata.h b/src/android/camera_metadata.h
index 03b3e701..60be416c 100644
--- a/src/android/camera_metadata.h
+++ b/src/android/camera_metadata.h
@@ -34,7 +34,8 @@  public:
 	bool hasEntry(uint32_t tag) const;
 
 	template<typename T,
-		 std::enable_if_t<std::is_arithmetic_v<T>> * = nullptr>
+		 std::enable_if_t<std::is_arithmetic_v<T> ||
+				  std::is_enum_v<T>> * = nullptr>
 	bool addEntry(uint32_t tag, const T &data)
 	{
 		return addEntry(tag, &data, 1, sizeof(T));