Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Just keep the same exception_ptr (no copy).
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Thu, 4 Jul 2019 12:56:55 +0000 (14:56 +0200)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Thu, 4 Jul 2019 13:16:32 +0000 (15:16 +0200)
See https://stackoverflow.com/q/37249698 or https://stackoverflow.com/q/30580128

Let's see if it helps for issue simgrid/simgrid#27.

src/kernel/activity/CommImpl.cpp

index 4020b9c..8d6c7e3 100644 (file)
@@ -692,8 +692,7 @@ void CommImpl::finish()
       try {
         std::rethrow_exception(simcall->issuer->exception_);
       } catch (simgrid::Exception& e) {
-        e.value                     = rank;
-        simcall->issuer->exception_ = std::make_exception_ptr(e);
+        e.value = rank;
       }
     }