Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Just keep the same exception_ptr (no copy).
[simgrid.git] / src / kernel / activity / CommImpl.cpp
index 9031e83..8d6c7e3 100644 (file)
@@ -617,12 +617,12 @@ void CommImpl::finish()
 
         case SIMIX_SRC_TIMEOUT:
           simcall->issuer->exception_ = std::make_exception_ptr(
-              simgrid::TimeoutError(XBT_THROW_POINT, "Communication timeouted because of the sender"));
+              simgrid::TimeoutException(XBT_THROW_POINT, "Communication timeouted because of the sender"));
           break;
 
         case SIMIX_DST_TIMEOUT:
           simcall->issuer->exception_ = std::make_exception_ptr(
-              simgrid::TimeoutError(XBT_THROW_POINT, "Communication timeouted because of the receiver"));
+              simgrid::TimeoutException(XBT_THROW_POINT, "Communication timeouted because of the receiver"));
           break;
 
         case SIMIX_SRC_HOST_FAILURE:
@@ -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;
       }
     }