]> git.saurik.com Git - apt.git/commitdiff
The length given to msync was calculated wrong :/.
authorJay Freeman (saurik) <saurik@saurik.com>
Mon, 30 Jan 2017 17:13:46 +0000 (09:13 -0800)
committerJay Freeman (saurik) <saurik@saurik.com>
Mon, 30 Jan 2017 17:13:46 +0000 (09:13 -0800)
apt-pkg/contrib/mmap.cc

index 4c58a096dc389895f3dba6f080d73baef7b61d48..cb73fbc5d03907d563aedbe31cb988b10891b8fb 100644 (file)
@@ -202,7 +202,8 @@ bool MMap::Sync(unsigned long Start,unsigned long Stop)
       {
 #ifdef _POSIX_SYNCHRONIZED_IO
         unsigned long long const PSize = sysconf(_SC_PAGESIZE);
-        if (msync((char *)Base+(Start/PSize)*PSize, Stop - Start, MS_SYNC) < 0)
+         Start = (Start/PSize)*PSize;
+        if (msync((char *)Base+Start, Stop - Start, MS_SYNC) < 0)
            return _error->Errno("msync", _("Unable to synchronize mmap"));
 #endif
       }