You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Personality routine should be used only in helpers where there is a possibility that an exception could get propagated through the helper. So I don't think that all asm helpers should have it.
@janvorli In a case of Hijack helpers, which do not call any user code, do we need personality routines?
If they do not have any, will it result in failfast in a case of a bug? (like null deref due to a race or smth like that).
Aslo, there is one caveat - we check and may throw ThreadAbort when resuming from suspension. That can happen in a hijack helper.
Will that make it required to have a personality routine?
When there is no personality routine, the exception handling doesn't "see" the helper, so the exception flows from the callee to the caller of the helper. If we want to cause fail-fast or do some special handling if an exception crosses the frame of the helper, then we need a personality routine to achieve that.
RhpPInvokeExceptionGuard
is supposed to be used by PInvokes. Somehow that was lost and should be reintroduced.Also consider use in suspension hijack probes and other assembly helpers.
Perhaps either all should use a personality routine or none.
Re: #73216 (comment)
The text was updated successfully, but these errors were encountered: