push
github
FFI: Workaround for platform dlerror() returning NULL. Contributed by mcclure. (cherry picked from commit 478bcfe52) The `ffi.load()` implementation assumes the string returned from `dlerror()` is non-NULL and immediately dereferences it. This may lead to a crash on POSIX platforms [1] where it is possible. This patch adds the corresponding check and the default "dlopen failed" error message. Sergey Kaplun: * added the description and the test for the problem [1]: https://pubs.opengroup.org/onlinepubs/009695399/functions/dlerror.html Part of tarantool/tarantool#10199 Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org> Reviewed-by: Maxim Kokryashkin <m.kokryashkin@tarantool.org> Signed-off-by: Sergey Kaplun <skaplun@tarantool.org> (cherry picked from commit 1e77778b0)
5686 of 6027 branches covered (94.34%)
Branch coverage included in aggregate %.
2 of 2 new or added lines in 1 file covered. (100.0%)
13 existing lines in 4 files now uncovered.21677 of 23435 relevant lines covered (92.5%)
2893001.24 hits per line