Skip to content

Commit

Permalink
gh-106320: Remove _PyOS_ReadlineTState API (#107034)
Browse files Browse the repository at this point in the history
Remove _PyOS_ReadlineTState variable from the public C API.
The symbol is still exported for the readline shared extension.
  • Loading branch information
vstinner authored Jul 22, 2023
1 parent e5252c6 commit d228825
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 2 deletions.
1 change: 0 additions & 1 deletion Include/cpython/pythonrun.h
Original file line number Diff line number Diff line change
Expand Up @@ -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 *);
3 changes: 3 additions & 0 deletions Modules/readline.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down
4 changes: 3 additions & 1 deletion Parser/myreadline.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;

Expand Down

0 comments on commit d228825

Please sign in to comment.