diff --git a/ElectronNET.API/BridgeConnector.cs b/ElectronNET.API/BridgeConnector.cs index 9f939cd..c778970 100644 --- a/ElectronNET.API/BridgeConnector.cs +++ b/ElectronNET.API/BridgeConnector.cs @@ -204,7 +204,17 @@ namespace ElectronNET.API _socketSemaphoreHandlers.Wait(); try { - Socket.On(eventString, _ => fn()); + Socket.On(eventString, _ => + { + try + { + fn(); + } + catch (Exception E) + { + Logger.LogError(E, "Error running handler for event {0}", eventString); + } + }); } finally { @@ -217,7 +227,17 @@ namespace ElectronNET.API _socketSemaphoreHandlers.Wait(); try { - Socket.On(eventString, (o) => fn(o.GetValue(0))); + Socket.On(eventString, (o) => + { + try + { + fn(o.GetValue(0)); + } + catch(Exception E) + { + Logger.LogError(E, "Error running handler for event {0}", eventString); + } + }); } finally { diff --git a/ElectronNET.API/IpcMain.cs b/ElectronNET.API/IpcMain.cs index eae3f3c..6c59746 100644 --- a/ElectronNET.API/IpcMain.cs +++ b/ElectronNET.API/IpcMain.cs @@ -105,7 +105,7 @@ namespace ElectronNET.API public void Once(string channel, Action listener) { BridgeConnector.Emit("registerOnceIpcMainChannel", channel); - BridgeConnector.On(channel, (args) => + BridgeConnector.Once(channel, (args) => { var objectArray = FormatArguments(args);