forked from M-Labs/artiq
runtime/artiq_personality.c: don't dereference nonexistent typeInfoPtr.
This commit is contained in:
parent
51e966edf2
commit
f9e90d90fa
|
@ -415,6 +415,7 @@ _Unwind_Reason_Code __artiq_personality(
|
|||
(void*)typeInfoOffset, (void*)actionOffset);
|
||||
EH_ASSERT((typeInfoOffset >= 0) && "Filter clauses are not supported");
|
||||
|
||||
if(typeInfoOffset > 0) {
|
||||
unsigned encodingSize = getEncodingSize(ttypeEncoding);
|
||||
const uint8_t *typeInfoPtrPtr = classInfo - typeInfoOffset * encodingSize;
|
||||
uintptr_t typeInfoPtr = readEncodedPointer(&typeInfoPtrPtr, ttypeEncoding);
|
||||
|
@ -427,6 +428,7 @@ _Unwind_Reason_Code __artiq_personality(
|
|||
exceptionMatched = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!actionOffset)
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue