Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Check validity for extension (Framagit issue #10).
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Thu, 4 Apr 2019 12:48:23 +0000 (14:48 +0200)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Thu, 4 Apr 2019 12:55:35 +0000 (14:55 +0200)
src/msg/msg_process.cpp

index a3fcc83..b50cdb5 100644 (file)
@@ -30,7 +30,8 @@ void MSG_process_userdata_init()
 
   simgrid::s4u::Actor::on_destruction.connect([](simgrid::s4u::Actor const& actor) {
     // free the data if a function was provided
-    void* userdata = actor.extension<simgrid::msg::ActorUserData>()->get_user_data();
+    auto extension = actor.extension<simgrid::msg::ActorUserData>();
+    void* userdata = extension ? extension->get_user_data() : nullptr;
     if (userdata && msg_global->process_data_cleanup) {
       msg_global->process_data_cleanup(userdata);
     }