diff --git a/libffi/ChangeLog b/libffi/ChangeLog index 00b7a74219a..f66a84927e8 100644 --- a/libffi/ChangeLog +++ b/libffi/ChangeLog @@ -1,3 +1,8 @@ +2012-08-08 Uros Bizjak + + * src/s390/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test, + just return FFI_BAD_ABI when things are wrong. + 2012-07-18 H.J. Lu PR libffi/53982 diff --git a/libffi/src/s390/ffi.c b/libffi/src/s390/ffi.c index ca2675bc89d..8adb5bc0ba3 100644 --- a/libffi/src/s390/ffi.c +++ b/libffi/src/s390/ffi.c @@ -750,7 +750,8 @@ ffi_prep_closure_loc (ffi_closure *closure, void *user_data, void *codeloc) { - FFI_ASSERT (cif->abi == FFI_SYSV); + if (cif->abi != FFI_SYSV) + return FFI_BAD_ABI; #ifndef __s390x__ *(short *)&closure->tramp [0] = 0x0d10; /* basr %r1,0 */