diff options
author | Jay Freeman (saurik) <saurik@saurik.com> | 2017-01-30 09:13:46 -0800 |
---|---|---|
committer | Jay Freeman (saurik) <saurik@saurik.com> | 2017-01-30 09:13:46 -0800 |
commit | 89cb5d4dd729c4b8479eec94b9c4a58e11ab1794 (patch) | |
tree | 2ace1b13829847cf65a7deaae6606622627d37f8 | |
parent | ca2b6d6dac848ee6c6fdface7b49a4a58470a654 (diff) |
The length given to msync was calculated wrong :/.
-rw-r--r-- | apt-pkg/contrib/mmap.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apt-pkg/contrib/mmap.cc b/apt-pkg/contrib/mmap.cc index 4c58a096d..cb73fbc5d 100644 --- a/apt-pkg/contrib/mmap.cc +++ b/apt-pkg/contrib/mmap.cc @@ -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 } |