|
|
@@ -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
|
|
|
}
|