Title: EOApplication leaks after exception in modal panel
Entry Number: 2080 Last Updated: 29 November 1995 Document Revision: <<Date June 17, 1997>>
Keywords: EOApplication, leak, modal panel, exception
Question
After cancelling or raising and exception in a modal panel, my program begins leaking all autoreleased objects. Consequently, the virtual memory size of my application keeps growing. How can I fix this?
Answer
The EOApplication class supplied with EOF is responsible for managing the top level autorelease pool for the application. There is a bug in the implementation shipped with EOF 1.0 and EOF 1.1 that causes it to permanently cease freeing autoreleased objects once an exception has been raised from inside a modal panel. Calling NXAbortModal() also causes this problem.
You can work around this problem by linking the 4-way fat patch provided with NeXTanswer #2082
(also available via ftp from ftp.next.com under the path in URL format: ftp://ftp.next.com/pub/NeXTanswers/Files/Software_and_Tools/Unsupported_Software/EOApplicationPatch/2082_EOApplicationPatch.o )