mirror of https://github.com/aria2/aria2
fixed mmap failure check with MAP_FAILED flag
parent
ef0a2e601f
commit
fa43431974
|
@ -398,10 +398,14 @@ void AbstractDiskWriter::ensureMmapWrite(size_t len, int64_t offset)
|
||||||
errNum = GetLastError();
|
errNum = GetLastError();
|
||||||
}
|
}
|
||||||
#else // !__MINGW32__
|
#else // !__MINGW32__
|
||||||
mapaddr_ = reinterpret_cast<unsigned char*>(mmap(
|
void * pa = mmap(nullptr, filesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd_, 0);
|
||||||
nullptr, filesize, PROT_READ | PROT_WRITE, MAP_SHARED, fd_, 0));
|
|
||||||
if (!mapaddr_) {
|
if (pa == MAP_FAILED) {
|
||||||
errNum = errno;
|
errNum = errno;
|
||||||
|
mapaddr_ = nullptr;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
mapaddr_ = reinterpret_cast<unsigned char*>(pa);
|
||||||
}
|
}
|
||||||
#endif // !__MINGW32__
|
#endif // !__MINGW32__
|
||||||
if (mapaddr_) {
|
if (mapaddr_) {
|
||||||
|
|
Loading…
Reference in New Issue