diff --git a/OMCompiler/SimulationRuntime/fmi/export/openmodelica/fmu2_model_interface.c.inc b/OMCompiler/SimulationRuntime/fmi/export/openmodelica/fmu2_model_interface.c.inc index 0253e3026d7..fa9fdf0c552 100644 --- a/OMCompiler/SimulationRuntime/fmi/export/openmodelica/fmu2_model_interface.c.inc +++ b/OMCompiler/SimulationRuntime/fmi/export/openmodelica/fmu2_model_interface.c.inc @@ -377,7 +377,7 @@ fmi2Status internalEventIteration(fmi2Component c, fmi2EventInfo *eventInfo) fmi2Status status = fmi2OK; eventInfo->newDiscreteStatesNeeded = fmi2True; eventInfo->terminateSimulation = fmi2False; - while (eventInfo->newDiscreteStatesNeeded && !eventInfo->terminateSimulation) { + while (eventInfo->newDiscreteStatesNeeded && !eventInfo->terminateSimulation && status != fmi2Error) { status = internalEventUpdate((ModelInstance *)c, eventInfo); } return status;