X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ea1979038ff351519752688afc00416a6fb83929..8fb33d38a40ca0d377aa543a401d34309514e542:/src/xbt/memory_map.cpp?ds=sidebyside diff --git a/src/xbt/memory_map.cpp b/src/xbt/memory_map.cpp index 43ce328624..44d6fb2f11 100644 --- a/src/xbt/memory_map.cpp +++ b/src/xbt/memory_map.cpp @@ -1,8 +1,9 @@ -/* Copyright (c) 2008-2019. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2008-2020. 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. */ +#include #include #include #include @@ -162,7 +163,7 @@ std::vector get_memory_map(pid_t pid) /* to be returned. */ std::string path = std::string("/proc/") + std::to_string(pid) + "/maps"; std::ifstream fp; - fp.rdbuf()->pubsetbuf(0, 0); + fp.rdbuf()->pubsetbuf(nullptr, 0); fp.open(path); if (not fp) { std::perror("open failed"); @@ -181,7 +182,7 @@ std::vector get_memory_map(pid_t pid) /* Tokenize the line using spaces as delimiters and store each token in lfields array. We expect 5 tokens for 6 fields */ char* saveptr = nullptr; // for strtok_r() - char* lfields[6]; + std::array lfields; lfields[0] = strtok_r(line, " ", &saveptr); int i; @@ -197,7 +198,7 @@ std::vector get_memory_map(pid_t pid) /* Ok we are good enough to try to get the info we need */ /* First get the start and the end address of the map */ - char* tok = strtok_r(lfields[0], "-", &saveptr); + const char* tok = strtok_r(lfields[0], "-", &saveptr); if (tok == nullptr) { std::fprintf(stderr, "Start and end address of the map are not concatenated by a hyphen (-). Recovery impossible.\n");