Re: [PATCH] ntdll: Call __finally blocks in __C_specific_handler (try2)
6 Aug
2016
6 Aug
'16
8:45 a.m.
On 08/06/16 01:39, Daniel Lehman wrote:
+ if (rec->ExceptionFlags & EH_TARGET_UNWIND && + dispatch->TargetIp < dispatch->ImageBase + table->ScopeRecord[i].EndAddress) + { + break; + } Here's a test that shows that you also need to check BeginAddress: BOOL first = TRUE;
__try { begin: if(!first) { printf("here\n"); return 0; } first = FALSE; __try { __try { goto begin; } __finally { printf("finally 1\n"); } } __finally { printf("finally 2\n"); } } __finally { printf("finally 3\n"); }
3416
Age (days ago)
3416
Last active (days ago)
0 comments
1 participants
participants (1)
-
Piotr Caban