Fix ABI check regression

This commit is contained in:
Anthony Green
2012-02-15 00:18:18 -05:00
parent dee20f8e45
commit d578b89619
8 changed files with 56 additions and 39 deletions

View File

@@ -68,12 +68,12 @@ Index: libffi/src/prep_cif.c
FFI_ASSERT(cif != NULL);
#ifndef X86_WIN32
- FFI_ASSERT((abi > FFI_FIRST_ABI) && (abi <= FFI_DEFAULT_ABI));
+ if ((abi > FFI_FIRST_ABI) && (abi <= FFI_DEFAULT_ABI))
+ if (! (abi > FFI_FIRST_ABI) && (abi <= FFI_LAST_ABI))
+ return FFI_BAD_ABI;
#else
- FFI_ASSERT(abi > FFI_FIRST_ABI && abi < FFI_LAST_ABI
- || abi == FFI_THISCALL);
+ if (abi > FFI_FIRST_ABI && abi < FFI_LAST_ABI || abi == FFI_THISCALL)
+ if (! (abi > FFI_FIRST_ABI && abi < FFI_LAST_ABI || abi == FFI_THISCALL))
+ return FFI_BAD_ABI;
#endif