Index: DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs =================================================================== diff -u -r3180 -r3223 --- DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs (.../MacroStabilityInwardsKernelWrapper.cs) (revision 3180) +++ DamEngine/trunk/src/Deltares.DamEngine.Calculators/KernelWrappers/MacroStabilityInwards/MacroStabilityInwardsKernelWrapper.cs (.../MacroStabilityInwardsKernelWrapper.cs) (revision 3223) @@ -205,39 +205,48 @@ public int Validate(IKernelDataInput kernelDataInput, IKernelDataOutput kernelDataOutput, out List messages) { MacroStabilityKernelDataInput macroStabilityKernelDataInput = (MacroStabilityKernelDataInput)kernelDataInput; - var result = Deltares.MacroStability.CSharpWrapper.Validator.Validate((MacroStabilityInput)macroStabilityKernelDataInput.Input); messages = new List(); - if (result.IsValid) + try { - return 0; - } - - (kernelDataOutput as MacroStabilityOutput).CalculationResult = CalculationResult.InvalidInputData; - foreach (var resultMessage in result.Messages) - { - var message = new LogMessage(); - message.Message = resultMessage.Content; - switch (resultMessage.MessageType) + var result = Deltares.MacroStability.CSharpWrapper.Validator.Validate((MacroStabilityInput)macroStabilityKernelDataInput.Input); + if (result.IsValid) { - case MessageType.Error: + return 0; + } + (kernelDataOutput as MacroStabilityOutput).CalculationResult = CalculationResult.InvalidInputData; + foreach (var resultMessage in result.Messages) + { + var message = new LogMessage(); + message.Message = resultMessage.Content; + switch (resultMessage.MessageType) + { + case MessageType.Error: { message.MessageType = LogMessageType.Error; break; } - case MessageType.Info: + case MessageType.Info: { message.MessageType = LogMessageType.Info; break; } - case MessageType.Warning: + case MessageType.Warning: { message.MessageType = LogMessageType.Warning; break; } - }; + }; + messages.Add(message); + } + return 1; + } + catch (Exception e) + { + var message = new LogMessage {MessageType = LogMessageType.FatalError, Message = e.Message}; messages.Add(message); + (kernelDataOutput as MacroStabilityOutput).CalculationResult = CalculationResult.InvalidInputData; + return 1; } - return 1; } ///