diff options
author | Christopher Faylor <me@cgf.cx> | 2000-11-28 21:25:45 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2000-11-28 21:25:45 +0000 |
commit | 95ec0f241f9fb7fd6c4bc9d378de651f4bded0ad (patch) | |
tree | 8fa0bf18eba339a0104c80c78cb43824cffbbc1c /winsup/cygwin/mmap.cc | |
parent | e1a993d549f9f3047d31de7aeeaa0f49efdb738b (diff) | |
download | cygnal-95ec0f241f9fb7fd6c4bc9d378de651f4bded0ad.tar.gz cygnal-95ec0f241f9fb7fd6c4bc9d378de651f4bded0ad.tar.bz2 cygnal-95ec0f241f9fb7fd6c4bc9d378de651f4bded0ad.zip |
* mmap.cc (munmap): Check that mmap and munmap length match.
Diffstat (limited to 'winsup/cygwin/mmap.cc')
-rw-r--r-- | winsup/cygwin/mmap.cc | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/winsup/cygwin/mmap.cc b/winsup/cygwin/mmap.cc index cfd0a0f7f..4de9eb245 100644 --- a/winsup/cygwin/mmap.cc +++ b/winsup/cygwin/mmap.cc @@ -288,11 +288,10 @@ munmap (caddr_t addr, size_t len) list *l = mmapped_areas->lists[it]; if (l != 0) { - int li; - for (li = 0; li < l->nrecs; ++li) + for (int li = 0; li < l->nrecs; ++li) { mmap_record rec = l->recs[li]; - if (rec.get_address () == addr) + if (rec.get_address () == addr && rec.get_size () == len) { int fd = l->fd; fhandler_disk_file fh_paging_file (NULL); |