diff options
author | Victor Stinner <vstinner@python.org> | 2023-07-22 14:45:56 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-22 14:45:56 (GMT) |
commit | d228825e08883fc13f35eb91435f95d32524931c (patch) | |
tree | 5d886d54a07638519b238fb32daa3586a239f76b | |
parent | e5252c6127ad788b39221982964f935bd1513028 (diff) | |
download | cpython-d228825e08883fc13f35eb91435f95d32524931c.zip cpython-d228825e08883fc13f35eb91435f95d32524931c.tar.gz cpython-d228825e08883fc13f35eb91435f95d32524931c.tar.bz2 |
gh-106320: Remove _PyOS_ReadlineTState API (#107034)
Remove _PyOS_ReadlineTState variable from the public C API.
The symbol is still exported for the readline shared extension.
-rw-r--r-- | Include/cpython/pythonrun.h | 1 | ||||
-rw-r--r-- | Modules/readline.c | 3 | ||||
-rw-r--r-- | Parser/myreadline.c | 4 |
3 files changed, 6 insertions, 2 deletions
diff --git a/Include/cpython/pythonrun.h b/Include/cpython/pythonrun.h index fb61765..3b2537e 100644 --- a/Include/cpython/pythonrun.h +++ b/Include/cpython/pythonrun.h @@ -117,5 +117,4 @@ PyAPI_FUNC(PyObject *) PyRun_FileFlags(FILE *fp, const char *p, int s, PyObject /* Stuff with no proper home (yet) */ PyAPI_FUNC(char *) PyOS_Readline(FILE *, FILE *, const char *); -PyAPI_DATA(PyThreadState*) _PyOS_ReadlineTState; PyAPI_DATA(char) *(*PyOS_ReadlineFunctionPointer)(FILE *, FILE *, const char *); diff --git a/Modules/readline.c b/Modules/readline.c index a592919..6729a09 100644 --- a/Modules/readline.c +++ b/Modules/readline.c @@ -1313,6 +1313,9 @@ rlhandler(char *text) static char * readline_until_enter_or_signal(const char *prompt, int *signal) { + // Defined in Parser/myreadline.c + extern PyThreadState *_PyOS_ReadlineTState; + char * not_done_reading = ""; fd_set selectset; diff --git a/Parser/myreadline.c b/Parser/myreadline.c index 7074aba..8153873 100644 --- a/Parser/myreadline.c +++ b/Parser/myreadline.c @@ -20,7 +20,9 @@ #endif /* MS_WINDOWS */ -PyThreadState* _PyOS_ReadlineTState = NULL; +// Export the symbol since it's used by the readline shared extension +PyAPI_DATA(PyThreadState*) _PyOS_ReadlineTState; +PyThreadState *_PyOS_ReadlineTState = NULL; static PyThread_type_lock _PyOS_ReadlineLock = NULL; |