Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
This should be an off_t (breaks some 32 bits systems)
authordegomme <augustin.degomme@unibas.ch>
Wed, 22 Feb 2017 14:24:38 +0000 (15:24 +0100)
committerdegomme <augustin.degomme@unibas.ch>
Wed, 22 Feb 2017 17:20:43 +0000 (18:20 +0100)
src/mc/Process.cpp

index 0a38e29..df7ef3c 100644 (file)
@@ -143,12 +143,12 @@ static char* get_lib_name(const char* pathname, struct s_mc_memory_map_re* res)
   return libname;
 }
 
-static ssize_t pread_whole(int fd, void *buf, size_t count, std::uint64_t offset)
+static ssize_t pread_whole(int fd, void *buf, size_t count, off_t offset)
 {
   char* buffer = (char*) buf;
   ssize_t real_count = count;
   while (count) {
-    ssize_t res = pread(fd, buffer, count, (std::int64_t) offset);
+    ssize_t res = pread(fd, buffer, count, offset);
     if (res > 0) {
       count  -= res;
       buffer += res;
@@ -499,7 +499,7 @@ const void *Process::read_bytes(void* buffer, std::size_t size,
 #endif
   }
 
-  if (pread_whole(this->memory_file, buffer, size, address.address()) < 0)
+  if (pread_whole(this->memory_file, buffer, size, (off_t) address.address()) < 0)
     xbt_die("Read at %p from process %lli failed", (void*)address.address(), (long long)this->pid_);
   return buffer;
 }