diff --git a/src/MeloNX/MeloNX.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate b/src/MeloNX/MeloNX.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate
index b27d29355..07a2298c3 100644
Binary files a/src/MeloNX/MeloNX.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate and b/src/MeloNX/MeloNX.xcodeproj/project.xcworkspace/xcuserdata/stossy11.xcuserdatad/UserInterfaceState.xcuserstate differ
diff --git a/src/MeloNX/MeloNX/MeloNXApp.swift b/src/MeloNX/MeloNX/MeloNXApp.swift
index f44c773fb..d60a27413 100644
--- a/src/MeloNX/MeloNX/MeloNXApp.swift
+++ b/src/MeloNX/MeloNX/MeloNXApp.swift
@@ -11,7 +11,7 @@ import UIKit
 @main
 struct MeloNXApp: App {
     
-    @AppStorage("showeddrmcheck") var showed = false
+    @AppStorage("showeddrmcheck") var showed = true
     
     init() {
         DispatchQueue.main.async { [self] in
@@ -21,7 +21,7 @@ struct MeloNXApp: App {
                     if bool {
                         print("Yippee")
                     } else {
-                        exit(0)
+                       //  exit(0)
                     }
                 }
             } else {
diff --git a/src/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs b/src/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
index a7debb55f..f6120c9dc 100644
--- a/src/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
+++ b/src/Ryujinx.Graphics.Vulkan/HardwareCapabilities.cs
@@ -105,8 +105,8 @@ namespace Ryujinx.Graphics.Vulkan
             SupportsConditionalRendering = supportsConditionalRendering;
             SupportsExtendedDynamicState = (OperatingSystem.IsIOS() ? OperatingSystem.IsIOSVersionAtLeast(17) ? supportsExtendedDynamicState : false : supportsExtendedDynamicState);
             SupportsMultiView = supportsMultiView;
-            SupportsNullDescriptors = (OperatingSystem.IsIOS() ? false : supportsNullDescriptors);
-            SupportsPushDescriptors = (OperatingSystem.IsIOS() ? false : supportsNullDescriptors);
+            SupportsNullDescriptors = supportsNullDescriptors;
+            SupportsPushDescriptors = supportsPushDescriptors;
             SupportsPrimitiveTopologyListRestart = supportsPrimitiveTopologyListRestart;
             SupportsPrimitiveTopologyPatchListRestart = supportsPrimitiveTopologyPatchListRestart;
             SupportsTransformFeedback = supportsTransformFeedback;
diff --git a/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs b/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
index 3a2b104ce..0bac66539 100644
--- a/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
+++ b/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
@@ -301,6 +301,10 @@ namespace Ryujinx.Graphics.Vulkan
                 properties.Limits.FramebufferDepthSampleCounts &
                 properties.Limits.FramebufferStencilSampleCounts;
 
+            bool isDynamicStateSupported = OperatingSystem.IsIOS()
+                ? OperatingSystem.IsIOSVersionAtLeast(17) && _physicalDevice.IsDeviceExtensionPresent(ExtExtendedDynamicState.ExtensionName)
+                : _physicalDevice.IsDeviceExtensionPresent(ExtExtendedDynamicState.ExtensionName);
+
             Capabilities = new HardwareCapabilities(
                 _physicalDevice.IsDeviceExtensionPresent("VK_EXT_index_type_uint8"),
                 supportsCustomBorderColor,
@@ -316,7 +320,7 @@ namespace Ryujinx.Graphics.Vulkan
                 _physicalDevice.IsDeviceExtensionPresent("VK_EXT_shader_stencil_export"),
                 features2.Features.ShaderStorageImageMultisample,
                 _physicalDevice.IsDeviceExtensionPresent(ExtConditionalRendering.ExtensionName),
-                _physicalDevice.IsDeviceExtensionPresent(ExtExtendedDynamicState.ExtensionName),
+                isDynamicStatesupported,
                 features2.Features.MultiViewport && !(IsMoltenVk && Vendor == Vendor.Amd), // Workaround for AMD on MoltenVK issue
                 featuresRobustness2.NullDescriptor || !IsMoltenVk,
                 _physicalDevice.IsDeviceExtensionPresent(KhrPushDescriptor.ExtensionName),
diff --git a/src/Ryujinx.Headless.SDL2/Program.cs b/src/Ryujinx.Headless.SDL2/Program.cs
index e5566315e..5b583da7a 100644
--- a/src/Ryujinx.Headless.SDL2/Program.cs
+++ b/src/Ryujinx.Headless.SDL2/Program.cs
@@ -1411,14 +1411,18 @@ public unsafe struct GameInfoNative
 
         if (imageData == null || imageData.Length > 4096 * 4096)
         {
-            throw new ArgumentException("Image data must not exceed 4 MB.");
+            // throw new ArgumentException("Image data must not exceed 4 MB.");
+            ImageSize = (uint)0;
+            ImageData = null;
         }
-
-        ImageSize = (uint)imageData.Length;
+        else 
+        {
+            ImageSize = (uint)imageData.Length;
         
-        ImageData = (byte*)Marshal.AllocHGlobal(imageData.Length);
+            ImageData = (byte*)Marshal.AllocHGlobal(imageData.Length);
         
-        Marshal.Copy(imageData, 0, (IntPtr)ImageData, imageData.Length);
+            Marshal.Copy(imageData, 0, (IntPtr)ImageData, imageData.Length);
+        }
     }
 
     // Don't forget to free the allocated memory