1.0.46.27: fix mach port leakage
authorCyrus Harmon <ch-sbcl@bobobeach.com>
Tue, 8 Mar 2011 00:55:10 +0000 (00:55 +0000)
committerCyrus Harmon <ch-sbcl@bobobeach.com>
Tue, 8 Mar 2011 00:55:10 +0000 (00:55 +0000)
commitd3af5593ffff1c39a2f8fa8113704803f347e22f
tree58c2d9f594c890270b0ac6c3ed6bdc30913ca6b2
parente8c80f67856e7fd94f64574d10b5637fef5af1f6
1.0.46.27: fix mach port leakage

 * store mach_thread_self() results in current_mach_thread and
   deallocate the mach_port after thread_set_exception_ports call

 * fix error messages in lose strings in mach_thread_init

 * catch_exception_raise now calls mach_port_deallocate for the
   exception_port, the thread and the task

 * These changes seem to get rid of most of the leaking port
   rights. However, MachPortDump shows when running the
   threads.impure.lisp tests, there are still a number of ports that
   stick around with a single send right.
src/runtime/darwin-os.c
src/runtime/x86-64-darwin-os.c
version.lisp-expr