From 31d9d46623ffe8d1b4c935bf094bbe768a38e2b0 Mon Sep 17 00:00:00 2001
From: Danmei Chen <danmei.chen@belledonne-communications.com>
Date: Fri, 4 Feb 2022 22:20:10 +0100
Subject: [PATCH] fix swift wrapper for enum

---
 wrappers/swift/genwrapper.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/wrappers/swift/genwrapper.py b/wrappers/swift/genwrapper.py
index d8c563aa78..11a0280bb0 100644
--- a/wrappers/swift/genwrapper.py
+++ b/wrappers/swift/genwrapper.py
@@ -129,10 +129,10 @@ class SwiftTranslator:
                     methodDict['impl']['c_args'] += argName + "?.cPtr" if arg.maybenil else argName + ".cPtr"
                 elif isinstance(arg.type, AbsApi.EnumType):
                     argType = arg.type.translate(self.langTranslator, namespace=namespace)
-                    if methodDict['impl']['type'] == "Int":
-                        methodDict['impl']['c_args'] += arg.type.name + "(rawValue: CInt(" + argName + ".rawValue))"
-                    else:
+                    if arg.type.desc.isUnsigned:
                         methodDict['impl']['c_args'] += arg.type.name + "(rawValue: CUnsignedInt(" + argName + ".rawValue))"
+                    else:
+                        methodDict['impl']['c_args'] += arg.type.name + "(rawValue: CInt(" + argName + ".rawValue))"
                 elif arg.type.name == "size" or arg.type.name == "time":
                     methodDict['impl']['c_args'] += argName
                 elif argType == "Int":
-- 
GitLab