Bug 882903 - SPS breadkpad unwinder segfaults with on-demand decompression on. r=glandium.

This commit is contained in:
Julian Seward 2013-06-14 14:03:25 +02:00
parent 7003f97655
commit 08b09fb3cc

View File

@ -208,7 +208,14 @@ LibHandle::MappableMMap(void *addr, size_t length, off_t offset) const
{
MOZ_ASSERT(mappable == NULL, "MappableMMap must be called after"
" GetMappableLength");
return mappable->mmap(addr, length, PROT_READ, MAP_PRIVATE, offset);
void* mapped = mappable->mmap(addr, length, PROT_READ, MAP_PRIVATE, offset);
if (mapped != MAP_FAILED) {
/* Ensure the availability of all pages within the mapping */
for (size_t off = 0; off < length; off += PAGE_SIZE) {
mappable->ensure(reinterpret_cast<char *>(mapped) + off);
}
}
return mapped;
}
void