Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
jedule: obey our coding standards
[simgrid.git] / src / smpi / smpirun.in
index b7b2203..e8f1743 100755 (executable)
@@ -1,6 +1,6 @@
 #!/usr/bin/env sh
 
-# Copyright (c) 2007-2016, The SimGrid Team. All rights reserved.
+# Copyright (c) 2007-2018. The SimGrid Team. All rights reserved.
 
 # This program is free software; you can redistribute it and/or modify it
 # under the terms of the license (GNU LGPL) which comes with this package.
@@ -500,6 +500,12 @@ pid=$!
 exec 3>&-
 wait $pid
 status=$?
+# With dash on Windows WSL/Ubuntu, "wait" sometimes returns early with an exit
+# status of 128. Try again.
+while test $status -eq 128 && kill -0 $pid 2>/dev/null; do
+    wait $pid
+    status=$?
+done
 pid=""
 
 # Keep temporary files on failures to help debugging