The GIL must be held to call PyMem_Malloc(), whereas PyOS_Readline() releases
the GIL to read input.
The result of the C callback PyOS_ReadlineFunctionPointer must now be a string
allocated by PyMem_RawMalloc() or PyMem_RawRealloc() (or NULL if an error
occurred), instead of a string allocated by PyMem_Malloc() or PyMem_Realloc().
Fixing this issue was required to setup a hook on PyMem_Malloc(), for example
using the tracemalloc module.
PyOS_Readline() copies the result of PyOS_ReadlineFunctionPointer() into a new
buffer allocated by PyMem_Malloc(). So the public API of PyOS_Readline() does
not change.
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r87356 | r.david.murray | 2010-12-17 22:48:32 -0500 (Fri, 17 Dec 2010) | 11 lines
#9907: call rl_initialize early when using editline on OSX
editline rl_initialize apparently discards any mappings done before it
is called, which makes tab revert to file completion instead of inserting
a tab. So now on OSX we call rl_initialize first if we are using
readline, and then re-read the users .editrc (if any) afterward so they
can still override our defaults.
Patch by Ned Deily, modified by Ronald Oussoren.
........
editline rl_initialize apparently discards any mappings done before it
is called, which makes tab revert to file completion instead of inserting
a tab. So now on OSX we call rl_initialize first if we are using
readline, and then re-read the users .editrc (if any) afterward so they
can still override our defaults.
Patch by Ned Deily, modified by Ronald Oussoren.
variable the return value is assigned to is char *. Since the assigned-to
variable is never changed, simply make that a const char * and cast all calls
to get_history to const char * to silence the compiler warning (found with
LLVM).
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83670 | mark.dickinson | 2010-08-03 17:49:49 +0100 (Tue, 03 Aug 2010) | 3 lines
Issue #8065: Fix another memory leak in readline module, from failure to free
the result of a call to history_get_history_state.
........
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r83670 | mark.dickinson | 2010-08-03 17:49:49 +0100 (Tue, 03 Aug 2010) | 3 lines
Issue #8065: Fix another memory leak in readline module, from failure to free
the result of a call to history_get_history_state.
........
svn+ssh://pythondev@svn.python.org/python/trunk
........
r78148 | ronald.oussoren | 2010-02-11 14:13:08 +0100 (Thu, 11 Feb 2010) | 3 lines
Add guard around the prototype for completion_matches to enable
compilition with libedit on OSX 10.5
........
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75531 | antoine.pitrou | 2009-10-19 20:17:18 +0200 (lun., 19 oct. 2009) | 4 lines
Issue #5833: Fix extra space character in readline completion with the
GNU readline library version 6.0.
........
r75725 | antoine.pitrou | 2009-10-26 20:16:46 +0100 (lun., 26 oct. 2009) | 4 lines
Some platforms have rl_completion_append_character but not rl_completion_suppress_append.
Reported by Mark D.
........
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75725 | antoine.pitrou | 2009-10-26 20:16:46 +0100 (lun., 26 oct. 2009) | 4 lines
Some platforms have rl_completion_append_character but not rl_completion_suppress_append.
Reported by Mark D.
........
svn+ssh://pythondev@svn.python.org/python/trunk
........
r74970 | ronald.oussoren | 2009-09-20 16:18:15 +0200 (Sun, 20 Sep 2009) | 7 lines
Issue 6877: this patch makes it possible to link the readline extension
to the libedit emulation of the readline API on OSX 10.5 or later.
This also adds a minimal testsuite for readline to check that the
history manipuation functions have the same interface with both
C libraries.
........