Staging
v0.5.1
https://github.com/python/cpython
Revision 68c3724651776f4ae90ed24d70cef6fd45bc7db5 authored by Nir Soffer on 09 July 2017, 10:42:35 UTC, committed by Berker Peksag on 09 July 2017, 10:42:35 UTC
If history-length is set in .inputrc, and the history file is double the
history size (or more), history_get(N) returns NULL, and python
segfaults. Fix that by checking for NULL return value.

It seems that the root cause is incorrect handling of bigger history in
readline, but Python should not segfault even if readline returns
unexpected value.

This issue affects only GNU readline. When using libedit emulation
system history size option does not work.
1 parent 3bbdf99
History
Tip revision: 68c3724651776f4ae90ed24d70cef6fd45bc7db5 authored by Nir Soffer on 09 July 2017, 10:42:35 UTC
[3.5] bpo-29854: Fix segfault in call_readline() (GH-728)
Tip revision: 68c3724
File Mode Size
clinic
Python-ast.c -rw-r--r-- 250.4 KB
README -rw-r--r-- 62 bytes
_warnings.c -rw-r--r-- 32.6 KB
asdl.c -rw-r--r-- 1.4 KB
ast.c -rw-r--r-- 124.8 KB
bltinmodule.c -rw-r--r-- 79.3 KB
ceval.c -rw-r--r-- 166.6 KB
ceval_gil.h -rw-r--r-- 8.9 KB
codecs.c -rw-r--r-- 45.0 KB
compile.c -rw-r--r-- 134.0 KB
condvar.h -rw-r--r-- 11.0 KB
dtoa.c -rw-r--r-- 81.3 KB
dup2.c -rw-r--r-- 705 bytes
dynamic_annotations.c -rw-r--r-- 6.6 KB
dynload_aix.c -rw-r--r-- 5.7 KB
dynload_dl.c -rw-r--r-- 581 bytes
dynload_hpux.c -rw-r--r-- 1.9 KB
dynload_next.c -rw-r--r-- 3.9 KB
dynload_shlib.c -rw-r--r-- 3.3 KB
dynload_stub.c -rw-r--r-- 186 bytes
dynload_win.c -rw-r--r-- 10.0 KB
errors.c -rw-r--r-- 30.5 KB
fileutils.c -rw-r--r-- 45.5 KB
formatter_unicode.c -rw-r--r-- 48.7 KB
frozen.c -rw-r--r-- 1.7 KB
frozenmain.c -rw-r--r-- 2.7 KB
future.c -rw-r--r-- 4.7 KB
getargs.c -rw-r--r-- 54.0 KB
getcompiler.c -rw-r--r-- 366 bytes
getcopyright.c -rw-r--r-- 511 bytes
getopt.c -rw-r--r-- 3.4 KB
getplatform.c -rw-r--r-- 130 bytes
getversion.c -rw-r--r-- 289 bytes
graminit.c -rw-r--r-- 42.5 KB
import.c -rw-r--r-- 59.8 KB
importdl.c -rw-r--r-- 6.9 KB
importdl.h -rw-r--r-- 487 bytes
importlib.h -rw-r--r-- 102.6 KB
importlib_external.h -rw-r--r-- 136.8 KB
makeopcodetargets.py -rwxr-xr-x 1.2 KB
marshal.c -rw-r--r-- 48.9 KB
modsupport.c -rw-r--r-- 14.7 KB
mysnprintf.c -rw-r--r-- 3.3 KB
mystrtoul.c -rw-r--r-- 8.1 KB
opcode_targets.h -rw-r--r-- 6.3 KB
peephole.c -rw-r--r-- 25.1 KB
pyarena.c -rw-r--r-- 5.5 KB
pyctype.c -rw-r--r-- 7.7 KB
pyfpe.c -rw-r--r-- 621 bytes
pyhash.c -rw-r--r-- 13.0 KB
pylifecycle.c -rw-r--r-- 44.1 KB
pymath.c -rw-r--r-- 1.5 KB
pystate.c -rw-r--r-- 25.5 KB
pystrcmp.c -rw-r--r-- 613 bytes
pystrhex.c -rw-r--r-- 1.6 KB
pystrtod.c -rw-r--r-- 38.2 KB
pythonrun.c -rw-r--r-- 42.0 KB
pytime.c -rw-r--r-- 16.2 KB
random.c -rw-r--r-- 16.7 KB
sigcheck.c -rw-r--r-- 529 bytes
strdup.c -rw-r--r-- 247 bytes
structmember.c -rw-r--r-- 8.7 KB
symtable.c -rw-r--r-- 55.5 KB
sysmodule.c -rw-r--r-- 66.5 KB
thread.c -rw-r--r-- 12.4 KB
thread_foobar.h -rw-r--r-- 2.2 KB
thread_nt.h -rw-r--r-- 10.3 KB
thread_pthread.h -rw-r--r-- 17.6 KB
traceback.c -rw-r--r-- 19.3 KB

README

back to top