mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 07:31:38 +00:00 
			
		
		
		
	Bug #1177964: make file iterator raise MemoryError on too big files
This commit is contained in:
		
							parent
							
								
									644b1e7aac
								
							
						
					
					
						commit
						ed02eb6aa9
					
				
					 1 changed files with 2 additions and 1 deletions
				
			
		| 
						 | 
					@ -1797,7 +1797,7 @@ drop_readahead(PyFileObject *f)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Make sure that file has a readahead buffer with at least one byte
 | 
					/* 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
 | 
					   (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
 | 
					static int
 | 
				
			||||||
readahead(PyFileObject *f, int bufsize)
 | 
					readahead(PyFileObject *f, int bufsize)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
| 
						 | 
					@ -1810,6 +1810,7 @@ readahead(PyFileObject *f, int bufsize)
 | 
				
			||||||
			drop_readahead(f);
 | 
								drop_readahead(f);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if ((f->f_buf = PyMem_Malloc(bufsize)) == NULL) {
 | 
						if ((f->f_buf = PyMem_Malloc(bufsize)) == NULL) {
 | 
				
			||||||
 | 
							PyErr_NoMemory();
 | 
				
			||||||
		return -1;
 | 
							return -1;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	Py_BEGIN_ALLOW_THREADS
 | 
						Py_BEGIN_ALLOW_THREADS
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue