@@ -1185,15 +1185,15 @@ def simulate(
11851185 cmd_definition = om_cmd .definition ()
11861186 returncode = self ._session .run_model_executable (cmd_run_data = cmd_definition )
11871187 # and check returncode *AND* resultfile
1188- if returncode != 0 and self . _result_file . is_file () :
1188+ if returncode != 0 :
11891189 # check for an empty (=> 0B) result file which indicates a crash of the model executable
11901190 # see: https://github.com/OpenModelica/OMPython/issues/261
11911191 # https://github.com/OpenModelica/OpenModelica/issues/13829
1192- if self ._result_file .size () == 0 :
1192+ if self ._result_file .is_file () and self . _result_file . size () == 0 :
11931193 self ._result_file .unlink ()
11941194 raise ModelicaSystemError ("Empty result file - this indicates a crash of the model executable!" )
11951195
1196- logger .warning (f"Return code = { returncode } but result file exists !" )
1196+ logger .warning (f"Return code = { returncode } but result file was created !" )
11971197
11981198 self ._simulated = True
11991199
@@ -2188,9 +2188,9 @@ def worker(worker_id, task_queue):
21882188 try :
21892189 returncode = self .get_session ().run_model_executable (cmd_run_data = cmd_definition )
21902190 logger .info (f"[Worker { worker_id } ] Simulation { resultpath .name } "
2191- f"finished with return code: { returncode } " )
2192- except ModelicaSystemError as ex :
2193- logger .warning (f"Simulation error for { resultpath . name } : { ex } " )
2191+ f"finished with return code { returncode } " )
2192+ except OMCSessionException as ex :
2193+ logger .warning (f"Error executing { repr ( cmd_definition . get_cmd ()) } : { ex } " )
21942194
21952195 # Mark the task as done
21962196 task_queue .task_done ()
0 commit comments