https://bugs.documentfoundation.org/show_bug.cgi?id=97278
Bug ID: 97278
Summary: Windows: SEH and crash-handling / OpenGLZone
Product: LibreOffice
Version: 5.1.0.1 rc
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: LibreOffice
Assignee: [email protected]
Reporter: [email protected]
It -appears- that windows SEH unwinds local variables; so things like:
{
OpenGLZone aZone;
<segv>
}
Will happily do ~OpenGLZone() - as the SEH exception is unwound.
Since commit:
http://cgit.freedesktop.org/libreoffice/core/commit/?id=977a2f14dbb23a8ff1281e799f0c0af43aa2fb52
It appears that we catch all un-handled exceptions and print information about
them - and call FatalError.
This would (seem) to include seg faults - but most interestingly, the
FatalError handler in desktop/ doesn't appear to trigger the auto-save
mechanism; just throws up a native dialog with "SEH exception" or somesuch -
which seems crazy-odd.
At least, this is what I suspect ;-) it seems our seg-fault handler:
sal/osl/w32/signal.c uses:
SetUnhandledExceptionFilter(SignalHandlerFunction);
while I imagine catch (...) at the very top-level handles ~everything at this
stage ;-)
Quite possibly we want to use:
AddVectoredExceptionHandler
Instead to catch these bad-boys, and/or turn off SEH or ...
Needs further investigation.
--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Libreoffice-bugs mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs