Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
another assert to make one segfault more explicit
[simgrid.git] / src / mc / remote / RemoteClient.cpp
index b01b482..1828f23 100644 (file)
@@ -7,10 +7,10 @@
 
 #include "src/mc/remote/RemoteClient.hpp"
 
+#include "src/mc/mc_smx.hpp"
+#include "src/mc/sosp/Snapshot.hpp"
 #include "xbt/file.hpp"
 #include "xbt/log.h"
-#include "src/mc/mc_smx.hpp"
-#include "src/mc/sosp/mc_snapshot.hpp"
 
 #include <fcntl.h>
 #include <libunwind-ptrace.h>
@@ -389,6 +389,7 @@ const simgrid::mc::Variable* RemoteClient::find_variable(const char* name) const
 void RemoteClient::read_variable(const char* name, void* target, size_t size) const
 {
   const simgrid::mc::Variable* var = this->find_variable(name);
+  xbt_assert(var, "Variable %s not found", name);
   xbt_assert(var->address, "No simple location for this variable");
   xbt_assert(var->type->full_type, "Partial type for %s, cannot check size", name);
   xbt_assert((size_t)var->type->full_type->byte_size == size, "Unexpected size for %s (expected %zu, was %zu)", name,
@@ -425,8 +426,7 @@ std::string RemoteClient::read_string(RemotePtr<char> address) const
   }
 }
 
-const void* RemoteClient::read_bytes(void* buffer, std::size_t size, RemotePtr<void> address,
-                                     ReadOptions /*options*/) const
+void* RemoteClient::read_bytes(void* buffer, std::size_t size, RemotePtr<void> address, ReadOptions /*options*/) const
 {
   if (pread_whole(this->memory_file, buffer, size, (size_t)address.address()) < 0)
     xbt_die("Read at %p from process %lli failed", (void*)address.address(), (long long)this->pid_);