Explorar o código

Fixed empty IntPtrToStringArray

Krzysztof Krysiński hai 1 semana
pai
achega
eea6fc83af

+ 1 - 1
src/PixiEditor.Extensions.CommonApi/PixiEditor.Extensions.CommonApi.csproj

@@ -5,7 +5,7 @@
     <ImplicitUsings>enable</ImplicitUsings>
     <Nullable>disable</Nullable>
     <PackageId>PixiEditor.Extensions.CommonApi</PackageId>
-    <PackageVersion>0.0.1-dev</PackageVersion>
+    <PackageVersion>0.0.1.1-dev</PackageVersion>
   </PropertyGroup>
 
   <ItemGroup>

+ 1 - 1
src/PixiEditor.Extensions.Sdk/PixiEditor.Extensions.Sdk.csproj

@@ -17,7 +17,7 @@
     <NativeDebugSymbols>false</NativeDebugSymbols>
     <ValidateExecutableReferencesMatchSelfContained>false</ValidateExecutableReferencesMatchSelfContained>
     <PackageId>PixiEditor.Extensions.Sdk</PackageId>
-    <PackageVersion>0.0.1-dev</PackageVersion>
+    <PackageVersion>0.0.1.1-dev</PackageVersion>
   </PropertyGroup>
 
   <ItemGroup>

+ 6 - 1
src/PixiEditor.Extensions.Sdk/Utilities/InteropUtility.cs

@@ -36,7 +36,12 @@ public static class InteropUtility
     public static string[] IntPtrToStringArray(IntPtr ptr)
     {
         List<string> list = new List<string>();
-        byte[] arr = InteropUtility.PrefixedIntPtrToByteArray(ptr);
+        byte[] arr = PrefixedIntPtrToByteArray(ptr);
+        if (arr.Length == 0)
+        {
+            return [];
+        }
+
         int length = BitConverter.ToInt32(arr, 0);
         int offset = 4;
         for (int i = 0; i < length; i++)