mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	The change in the linecache.checkcache() signature at rev 1.13 caused IDLE to exit
when an exception was raised while running w/o the subprocess. Python Bug 1063840 M NEWS.txt M PyShell.py
This commit is contained in:
		
							parent
							
								
									1681b62251
								
							
						
					
					
						commit
						f7a8899f33
					
				
					 2 changed files with 11 additions and 6 deletions
				
			
		|  | @ -3,6 +3,9 @@ What's New in IDLE 1.1b3/rc1? | |||
| 
 | ||||
| *Release date: XX-XXX-2004* | ||||
| 
 | ||||
| - A change to the linecache.py API caused IDLE to exit when an exception was | ||||
|   raised while running without the subprocess (-n switch).  Python Bug 1063840. | ||||
| 
 | ||||
| What's New in IDLE 1.1b2? | ||||
| ========================= | ||||
| 
 | ||||
|  |  | |||
|  | @ -73,14 +73,16 @@ def idle_formatwarning(message, category, filename, lineno): | |||
|         return s | ||||
|     warnings.formatwarning = idle_formatwarning | ||||
| 
 | ||||
| def extended_linecache_checkcache(orig_checkcache=linecache.checkcache): | ||||
| def extended_linecache_checkcache(filename=None, | ||||
|                                   orig_checkcache=linecache.checkcache): | ||||
|     """Extend linecache.checkcache to preserve the <pyshell#...> entries | ||||
| 
 | ||||
|     Rather than repeating the linecache code, patch it to save the pyshell# | ||||
|     entries, call the original linecache.checkcache(), and then restore the | ||||
|     saved entries.  Assigning the orig_checkcache keyword arg freezes its value | ||||
|     at definition time to the (original) method linecache.checkcache(), i.e. | ||||
|     makes orig_checkcache lexical. | ||||
|     Rather than repeating the linecache code, patch it to save the | ||||
|     <pyshell#...> entries, call the original linecache.checkcache() | ||||
|     (which destroys them), and then restore the saved entries. | ||||
| 
 | ||||
|     orig_checkcache is bound at definition time to the original | ||||
|     method, allowing it to be patched. | ||||
| 
 | ||||
|     """ | ||||
|     cache = linecache.cache | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Kurt B. Kaiser
						Kurt B. Kaiser