Staging
v0.5.1
https://github.com/python/cpython
Revision 7105319ada2e663659020cbe9fdf7ff38f421ab2 authored by serge-sans-paille on 04 December 2019, 16:02:57 UTC, committed by Victor Stinner on 04 December 2019, 16:02:57 UTC
The readline module now detects if Python is linked to libedit at runtime
on all platforms.  Previously, the check was only done on macOS.

If Python is used as a library by a binary linking to libedit, the linker
resolves the rl_initialize symbol required by the readline module against
libedit instead of libreadline, which leads to a segfault.

Take advantage of the existing supporting code to have readline module being
compatible with both situations.
1 parent ac0e1c2
Raw File
Tip revision: 7105319ada2e663659020cbe9fdf7ff38f421ab2 authored by serge-sans-paille on 04 December 2019, 16:02:57 UTC
bpo-38634: Allow non-apple build to cope with libedit (GH-16986)
Tip revision: 7105319
pyfpe.h
#ifndef Py_PYFPE_H
#define Py_PYFPE_H
/* Header excluded from the stable API */
#ifndef Py_LIMITED_API

/* These macros used to do something when Python was built with --with-fpectl,
 * but support for that was dropped in 3.7. We continue to define them though,
 * to avoid breaking API users.
 */

#define PyFPE_START_PROTECT(err_string, leave_stmt)
#define PyFPE_END_PROTECT(v)

#endif /* !defined(Py_LIMITED_API) */
#endif /* !Py_PYFPE_H */
back to top