Open GoogleCodeExporter opened 9 years ago
Doesn't std::set_terminate help with this?
Original comment by sgr...@chromium.org
on 4 Jun 2014 at 4:10
Unfortunately no. std::terminate is only called when there is not exception handler.
When there is a catch/rethrow of a C++ exception, the interesting stack is destroyed when the code in the catch block is executed, and it is then too late to get anything interesting.
Original comment by qsr@chromium.org
on 4 Jun 2014 at 4:17
Why can't you install a std::terminate handler and do what _objc_terminate()
does? In the callstack above, the object is clearly an objc exception which
should have the call stack. No? Am I missing something?
Original comment by sgr...@chromium.org
on 12 Jun 2014 at 5:11
Because the code looks like something like this:
try {
} catch(e) {
// HERE
throw e;
}
The terminate is called at the HERE place in the stack. The stack where the
original exception has been called doesn't exist anymore.
Original comment by qsr@chromium.org
on 13 Jun 2014 at 4:18
Original issue reported on code.google.com by
stuartmorgan@chromium.org
on 19 Sep 2013 at 9:39