Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use (const) references with range-based for loops.
[simgrid.git] / src / smpi / internals / smpi_shared.cpp
index c2a55cd..635f2b5 100644 (file)
@@ -38,8 +38,6 @@
 
 #include "private.h"
 #include "private.hpp"
-#include "xbt/dict.h"
-#include "xbt/ex.hpp"
 #include <cerrno>
 
 #include <sys/types.h>
@@ -390,7 +388,7 @@ int smpi_is_shared(void* ptr, std::vector<std::pair<size_t, size_t>> &private_bl
     return 0;
   if ( smpi_cfg_shared_malloc == shmalloc_local || smpi_cfg_shared_malloc == shmalloc_global) {
     auto low = allocs_metadata.lower_bound(ptr);
-    if (low->first==ptr) {
+    if (low != allocs_metadata.end() && low->first == ptr) {
       private_blocks = low->second.private_blocks;
       *offset = 0;
       return 1;
@@ -412,7 +410,7 @@ int smpi_is_shared(void* ptr, std::vector<std::pair<size_t, size_t>> &private_bl
 
 std::vector<std::pair<size_t, size_t>> shift_and_frame_private_blocks(const std::vector<std::pair<size_t, size_t>> vec, size_t offset, size_t buff_size) {
     std::vector<std::pair<size_t, size_t>> result;
-    for(auto block: vec) {
+    for (auto const& block : vec) {
         auto new_block = std::make_pair(std::min(std::max((size_t)0, block.first-offset), buff_size),
                                         std::min(std::max((size_t)0, block.second-offset), buff_size));
         if(new_block.second > 0 && new_block.first < buff_size)