summaryrefslogtreecommitdiff
path: root/Objects
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2006-03-31 20:31:05 +0000
committerGeorg Brandl <georg@python.org>2006-03-31 20:31:05 +0000
commitaf55db9cd83f82db032190a0e15ad6e8dec11488 (patch)
treef5ca9179c08300ef580e25195bf48967ec321718 /Objects
parent5c1498057a85a463e422d7e6464479dfe12dde20 (diff)
downloadcpython-git-af55db9cd83f82db032190a0e15ad6e8dec11488.tar.gz
Bug #1177964: make file iterator raise MemoryError on too big files
(backport from rev. 43506)
Diffstat (limited to 'Objects')
-rw-r--r--Objects/fileobject.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/Objects/fileobject.c b/Objects/fileobject.c
index c08345c04d..d7a06942e0 100644
--- a/Objects/fileobject.c
+++ b/Objects/fileobject.c
@@ -1697,7 +1697,7 @@ drop_readahead(PyFileObject *f)
/* Make sure that file has a readahead buffer with at least one byte
(unless at EOF) and no more than bufsize. Returns negative value on
- error */
+ error, will set MemoryError if bufsize bytes cannot be allocated. */
static int
readahead(PyFileObject *f, int bufsize)
{
@@ -1710,6 +1710,7 @@ readahead(PyFileObject *f, int bufsize)
drop_readahead(f);
}
if ((f->f_buf = PyMem_Malloc(bufsize)) == NULL) {
+ PyErr_NoMemory();
return -1;
}
Py_BEGIN_ALLOW_THREADS