Knowledgebase: General
6.x: EL shows wrong call stack at re-raise in C++ Builder application.
Posted by Alexander Alexeev on 02 April 2009 08:21
Problem:
EL shows partial call stack when reraising exception.

void test()
{
throw Exception("actual exception"); // this line is not showed in call stack
}

void test2()
{
try
{
test();
}
catch (const Exception& ex)
{
throw; // stack trace starts here - not useful enough
}
}

Explanation:
This is a limitation of C++ Builder version of EL. This feature is in our TO-DO list for the next major version.

Workaround:
You can re-throw the exception using the SetLastExceptionData procedure (able to doesn't lost the last exception stack data).

See more detailed data here:
http://www.eurekalog.com/docs/showlastexceptiondataproc.html

Checked EL version: 6.0.18
Ticket ID: 378

Help Desk Software by Kayako Resolve