From 510d08bfe4a24d8d4f2b5ff8df0874746a16cfe8 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Mon, 14 Aug 2000 02:50:21 +0000 Subject: [PATCH] In the section on the "Very High Level Layer", address concerns brought up by Edward K. Ream about FILE* values and incompatible C libraries in dynamically linked extensions. It is not clear (to me) how realistic the issue is, but it is better documented than not. This closes SourceForge bug #111520. --- Doc/api/api.tex | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Doc/api/api.tex b/Doc/api/api.tex index bebe8dc1405..fe095500b83 100644 --- a/Doc/api/api.tex +++ b/Doc/api/api.tex @@ -597,6 +597,15 @@ parameter. The available start symbols are \constant{Py_eval_input}, \constant{Py_file_input}, and \constant{Py_single_input}. These are described following the functions which accept them as parameters. +Note also that several of these functions take \ctype{FILE*} +parameters. On particular issue which needs to be handled carefully +is that the \ctype{FILE} structure for different C libraries can be +different and incompatible. Under Windows (at least), it is possible +for dynamically linked extensions to actually use different libraries, +so care should be taken that \ctype{FILE*} parameters are only passed +to these functions if it is certain that they were created by the same +library that the Python runtime is using. + \begin{cfuncdesc}{int}{PyRun_AnyFile}{FILE *fp, char *filename} If \var{fp} refers to a file associated with an interactive device (console or terminal input or \UNIX{} pseudo-terminal), return the