diff options
author | Guido van Rossum <guido@python.org> | 2000-08-27 19:21:52 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2000-08-27 19:21:52 (GMT) |
commit | 0df002c45b0bf2bf23bb8c0a395e86f907a94d81 (patch) | |
tree | 2812bdefa81aca791ce27544f424271e5f857c67 /Include | |
parent | 2f15b25da2060ab723e0bb82a8f4f713d547b2b8 (diff) | |
download | cpython-0df002c45b0bf2bf23bb8c0a395e86f907a94d81.zip cpython-0df002c45b0bf2bf23bb8c0a395e86f907a94d81.tar.gz cpython-0df002c45b0bf2bf23bb8c0a395e86f907a94d81.tar.bz2 |
Add three new APIs: PyRun_AnyFileEx(), PyRun_SimpleFileEx(),
PyRun_FileEx(). These are the same as their non-Ex counterparts but
have an extra argument, a flag telling them to close the file when
done.
Then this is used by Py_Main() and execfile() to close the file after
it is parsed but before it is executed.
Adding APIs seems strange given the feature freeze but it's the only
way I see to close the bug report without incompatible changes.
[ Bug #110616 ] source file stays open after parsing is done (PR#209)
Diffstat (limited to 'Include')
-rw-r--r-- | Include/pythonrun.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Include/pythonrun.h b/Include/pythonrun.h index 0528702..bbf2903a 100644 --- a/Include/pythonrun.h +++ b/Include/pythonrun.h @@ -29,9 +29,11 @@ DL_IMPORT(PyThreadState *) Py_NewInterpreter(void); DL_IMPORT(void) Py_EndInterpreter(PyThreadState *); DL_IMPORT(int) PyRun_AnyFile(FILE *, char *); +DL_IMPORT(int) PyRun_AnyFileEx(FILE *, char *, int); DL_IMPORT(int) PyRun_SimpleString(char *); DL_IMPORT(int) PyRun_SimpleFile(FILE *, char *); +DL_IMPORT(int) PyRun_SimpleFileEx(FILE *, char *, int); DL_IMPORT(int) PyRun_InteractiveOne(FILE *, char *); DL_IMPORT(int) PyRun_InteractiveLoop(FILE *, char *); @@ -40,6 +42,8 @@ DL_IMPORT(struct _node *) PyParser_SimpleParseFile(FILE *, char *, int); DL_IMPORT(PyObject *) PyRun_String(char *, int, PyObject *, PyObject *); DL_IMPORT(PyObject *) PyRun_File(FILE *, char *, int, PyObject *, PyObject *); +DL_IMPORT(PyObject *) PyRun_FileEx(FILE *, char *, int, + PyObject *, PyObject *, int); DL_IMPORT(PyObject *) Py_CompileString(char *, char *, int); |