summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmaury Forgeot d'Arc <amauryfa@gmail.com>2008-11-22 20:06:51 (GMT)
committerAmaury Forgeot d'Arc <amauryfa@gmail.com>2008-11-22 20:06:51 (GMT)
commit74b458ceb2de45d70d47b9e40dd262ca86e33769 (patch)
tree65f9f780e4d8006dddc943cb668b13502170c17c
parent71ce9e7ba4f5e06a48a0c455f6a5ae21feacc764 (diff)
downloadcpython-74b458ceb2de45d70d47b9e40dd262ca86e33769.zip
cpython-74b458ceb2de45d70d47b9e40dd262ca86e33769.tar.gz
cpython-74b458ceb2de45d70d47b9e40dd262ca86e33769.tar.bz2
Merged revisions 67343 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r67343 | amaury.forgeotdarc | 2008-11-22 21:01:18 +0100 (sam., 22 nov. 2008) | 5 lines #3996: On Windows, PyOS_CheckStack is supposed to protect the interpreter from stack overflow. But doing this, it always crashes when the stack is nearly full. Reviewed by Martin von Loewis. Will backport to 2.6. ........
-rw-r--r--Misc/NEWS4
-rw-r--r--Python/pythonrun.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index c7312ba..1c88576 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,10 @@ What's New in Python 2.6.1 alpha 1
Core and Builtins
-----------------
+- Issue #3996: On Windows, the PyOS_CheckStack function would cause the
+ interpreter to abort ("Fatal Python error: Could not reset the stack!")
+ instead of throwing a MemoryError.
+
- Issue #4367: Python would segfault during compiling when the unicodedata
module couldn't be imported and \N escapes were present.
diff --git a/Python/pythonrun.c b/Python/pythonrun.c
index 4ff70d8..54f3c57 100644
--- a/Python/pythonrun.c
+++ b/Python/pythonrun.c
@@ -1755,7 +1755,7 @@ PyOS_CheckStack(void)
EXCEPTION_EXECUTE_HANDLER :
EXCEPTION_CONTINUE_SEARCH) {
int errcode = _resetstkoflw();
- if (errcode)
+ if (errcode == 0)
{
Py_FatalError("Could not reset the stack!");
}