From 1ad9045c6b00a5c729c8c7d697f3da54ed177883 Mon Sep 17 00:00:00 2001
From: Ac_K <Acoustik666@gmail.com>
Date: Thu, 13 Aug 2020 01:04:59 +0200
Subject: [PATCH] bluetooth: Fix event handle in IBluetoothDriver (#1464)

This fix the InitializeBluetoothLe call who didn't return any event handle
---
 .../HOS/Services/Bluetooth/IBluetoothDriver.cs        | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/Ryujinx.HLE/HOS/Services/Bluetooth/IBluetoothDriver.cs b/Ryujinx.HLE/HOS/Services/Bluetooth/IBluetoothDriver.cs
index d94030fab4..2011e2abbc 100644
--- a/Ryujinx.HLE/HOS/Services/Bluetooth/IBluetoothDriver.cs
+++ b/Ryujinx.HLE/HOS/Services/Bluetooth/IBluetoothDriver.cs
@@ -1,4 +1,5 @@
-using Ryujinx.HLE.HOS.Kernel.Common;
+using Ryujinx.HLE.HOS.Ipc;
+using Ryujinx.HLE.HOS.Kernel.Common;
 using Ryujinx.HLE.HOS.Kernel.Threading;
 using Ryujinx.HLE.HOS.Services.Bluetooth.BluetoothDriver;
 using Ryujinx.HLE.HOS.Services.Settings;
@@ -21,6 +22,8 @@ namespace Ryujinx.HLE.HOS.Services.Bluetooth
         {
             NxSettings.Settings.TryGetValue("bluetooth_debug!skip_boot", out object debugMode);
 
+            int initializeEventHandle;
+
             if ((bool)debugMode)
             {
                 if (BluetoothEventManager.InitializeBleDebugEventHandle == 0)
@@ -52,6 +55,8 @@ namespace Ryujinx.HLE.HOS.Services.Bluetooth
                         throw new InvalidOperationException("Out of handles!");
                     }
                 }
+
+                initializeEventHandle = BluetoothEventManager.InitializeBleDebugEventHandle;
             }
             else
             {
@@ -86,8 +91,12 @@ namespace Ryujinx.HLE.HOS.Services.Bluetooth
                         throw new InvalidOperationException("Out of handles!");
                     }
                 }
+
+                initializeEventHandle = BluetoothEventManager.InitializeBleEventHandle;
             }
 
+            context.Response.HandleDesc = IpcHandleDesc.MakeCopy(initializeEventHandle);
+
             return ResultCode.Success;
         }
     }