A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[mc] Make ObjectInformation::file_names a std::string
[simgrid.git]
/
src
/
mc
/
mc_checkpoint.cpp
diff --git
a/src/mc/mc_checkpoint.cpp
b/src/mc/mc_checkpoint.cpp
index
98f3ec7
..
74c26ea
100644
(file)
--- a/
src/mc/mc_checkpoint.cpp
+++ b/
src/mc/mc_checkpoint.cpp
@@
-196,9
+196,11
@@
static void MC_get_memory_regions(mc_process_t process, mc_snapshot_t snapshot)
*
* `dl_iterate_phdr` would be more robust but would not work in cross-process.
* */
*
* `dl_iterate_phdr` would be more robust but would not work in cross-process.
* */
-void MC_find_object_address(std::vector<simgrid::mc::VmMap> const& maps, mc_object_info_t result)
+void MC_find_object_address(
+ std::vector<simgrid::mc::VmMap> const& maps, mc_object_info_t result)
{
{
- const char *name = basename(result->file_name);
+ const char* file_name = xbt_strdup(result->file_name.c_str());
+ const char *name = basename(file_name);
for (size_t i = 0; i < maps.size(); ++i) {
simgrid::mc::VmMap const& reg = maps[i];
if (maps[i].pathname.empty()
for (size_t i = 0; i < maps.size(); ++i) {
simgrid::mc::VmMap const& reg = maps[i];
if (maps[i].pathname.empty()
@@
-243,7
+245,6
@@
void MC_find_object_address(std::vector<simgrid::mc::VmMap> const& maps, mc_obje
if (result->end_exec && (const void*) result->end_exec > result->end)
result->end = result->end_exec;
if (result->end_exec && (const void*) result->end_exec > result->end)
result->end = result->end_exec;
- xbt_assert(result->file_name);
xbt_assert(result->start_rw);
xbt_assert(result->start_exec);
}
xbt_assert(result->start_rw);
xbt_assert(result->start_exec);
}