Opened 4 years ago
Last modified 4 years ago
#187 new defect
Exiting from catch Leaks Exception Memory
Reported by: | pabuhr | Owned by: | |
---|---|---|---|
Priority: | minor | Component: | cfa-cc |
Version: | 1.0 | Keywords: | |
Cc: |
Description (last modified by )
Exception is not cleaned up for exit from handler.
#include <exception.hfa> TRIVIAL_EXCEPTION(fred); int main( int argc, char * argv[] ) { try { throw (fred){}; } catch( fred * ex ) { exit( -1 ); } // try }
@plg2[101]% a.out CFA warning (UNIX pid:17447) : program terminating with 32(0x20) bytes of storage allocated but not freed. Possible cause is unfreed storage allocated by the program or system/library routines called from the program.
Change History (1)
comment:1 Changed 4 years ago by
Description: | modified (diff) |
---|---|
Summary: | exception leaks storage → Exiting from catch Leaks Exception Memory |
Note: See
TracTickets for help on using
tickets.
I already use a destructor to free storage, well a cleanup attribute that calls
__cfaehm_cleanup_terminate
. I might have to do something withat_exit
or something for this as I believeexit
doesn't unwind the stack.