Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use type 'bool' for boolean variables.
[simgrid.git] / src / kernel / context / Context.cpp
index e296e64..51dd90b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2007-2021. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2007-2022. 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. */
@@ -25,7 +25,7 @@ unsigned stack_size;
 unsigned guard_size;
 
 /** @brief Returns whether some parallel threads are used for the user contexts. */
-int is_parallel()
+bool is_parallel()
 {
   return parallel_contexts > 1;
 }
@@ -122,11 +122,11 @@ Context* ContextFactory::create_maestro(std::function<void()>&&, actor::ActorImp
     "Try using --cfg=contexts/factory:thread instead.\n");
 }
 
-Context::Context(std::function<void()>&& code, actor::ActorImpl* actor) : code_(std::move(code)), actor_(actor)
+Context::Context(std::function<void()>&& code, actor::ActorImpl* actor, bool maestro)
+    : code_(std::move(code)), actor_(actor), is_maestro_(maestro)
 {
-  /* If no function was provided, this is the context for maestro
-   * and we should set it as the current context */
-  if (not has_code())
+  /* If we are creating maestro, we should set it as the current context */
+  if (maestro)
     set_current(this);
 }