In current supplied arm/setjmp.h, jmp_buf is 27 words and sigjmp_buf is 28
words. Apple iPhone supplied libc.dylib sigsetjmp(&buf,mask) stores mask
at offset 112 (=28*4) into buf, corrupting whatever comes next. jmp_buf
needs to be >=28 words, sigjmp_buf needs to be >=29.
Full investigation not yet done, may actually need to be larger.
At this moment, even with the sigjmp_buf as 29 words, I think the signal
mask isn't being saved/restored correctly, and this could be a factor.
Original issue reported on code.google.com by andy.z....@googlemail.com on 18 Mar 2008 at 7:34
Original issue reported on code.google.com by
andy.z....@googlemail.com
on 18 Mar 2008 at 7:34