R
Riley DeWiley
I have a program which must call into third party code that might do a wild
write (I have been getting ASSERTs and access violations in debug code when
I am freeing pointers after a call into that code).
Assuming I have no control over what the third party code does, [how] can I
use the try/except mechanism to trap heap corruption? How can I recover?
It is easy enough to do this:
try
{
foo();
}
except(...)
{
//handle problems ...
recover_foo();
};
but when I get to recover_foo()
- Is my heap already thrashed?
- If so, can I recover somehow?
RDeW
write (I have been getting ASSERTs and access violations in debug code when
I am freeing pointers after a call into that code).
Assuming I have no control over what the third party code does, [how] can I
use the try/except mechanism to trap heap corruption? How can I recover?
It is easy enough to do this:
try
{
foo();
}
except(...)
{
//handle problems ...
recover_foo();
};
but when I get to recover_foo()
- Is my heap already thrashed?
- If so, can I recover somehow?
RDeW