diff options
-rw-r--r-- | libpager/object-terminate.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libpager/object-terminate.c b/libpager/object-terminate.c index 8598ab50..bab7ddb4 100644 --- a/libpager/object-terminate.c +++ b/libpager/object-terminate.c @@ -87,6 +87,7 @@ _pager_free_structure (struct pager *p) int wakeup; struct lock_request *lr; struct attribute_request *ar; + struct anticipation *ant, *nxt; wakeup = 0; for (lr = p->lock_requests; lr; lr = lr->next) @@ -107,6 +108,13 @@ _pager_free_structure (struct pager *p) mach_port_deallocate (mach_task_self (), p->memobjcntl); mach_port_deallocate (mach_task_self (), p->memobjname); + for (ant = p->anticipations; ant; ant = nxt) + { + vm_deallocate (mach_task_self (), ant->address, ant->len); + nxt = ant->next; + free (ant); + } + /* Free the pagemap */ if (p->pagemapsize) { |