mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 21:51:50 +00:00 
			
		
		
		
	Fix crash caused by 8c1385205a35
(thanks Arfrever for reporting).
This commit is contained in:
		
							parent
							
								
									dea2ec4b1d
								
							
						
					
					
						commit
						fd417cc54b
					
				
					 1 changed files with 8 additions and 6 deletions
				
			
		|  | @ -558,6 +558,9 @@ Py_Finalize(void) | |||
|     /* Destroy the database used by _PyImport_{Fixup,Find}Extension */ | ||||
|     _PyImport_Fini(); | ||||
| 
 | ||||
|     /* Cleanup typeobject.c's internal caches. */ | ||||
|     _PyType_Fini(); | ||||
| 
 | ||||
|     /* unload faulthandler module */ | ||||
|     _PyFaulthandler_Fini(); | ||||
| 
 | ||||
|  | @ -578,7 +581,7 @@ Py_Finalize(void) | |||
|         _Py_PrintReferences(stderr); | ||||
| #endif /* Py_TRACE_REFS */ | ||||
| 
 | ||||
|     /* Clear interpreter state */ | ||||
|     /* Clear interpreter state and all thread states. */ | ||||
|     PyInterpreterState_Clear(interp); | ||||
| 
 | ||||
|     /* Now we decref the exception classes.  After this point nothing
 | ||||
|  | @ -594,10 +597,6 @@ Py_Finalize(void) | |||
|     _PyGILState_Fini(); | ||||
| #endif /* WITH_THREAD */ | ||||
| 
 | ||||
|     /* Delete current thread */ | ||||
|     PyThreadState_Swap(NULL); | ||||
|     PyInterpreterState_Delete(interp); | ||||
| 
 | ||||
|     /* Sundry finalizers */ | ||||
|     PyMethod_Fini(); | ||||
|     PyFrame_Fini(); | ||||
|  | @ -611,11 +610,14 @@ Py_Finalize(void) | |||
|     PyFloat_Fini(); | ||||
|     PyDict_Fini(); | ||||
|     PySlice_Fini(); | ||||
|     _PyType_Fini(); | ||||
| 
 | ||||
|     /* Cleanup Unicode implementation */ | ||||
|     _PyUnicode_Fini(); | ||||
| 
 | ||||
|     /* Delete current thread. After this, many C API calls become crashy. */ | ||||
|     PyThreadState_Swap(NULL); | ||||
|     PyInterpreterState_Delete(interp); | ||||
| 
 | ||||
|     /* reset file system default encoding */ | ||||
|     if (!Py_HasFileSystemDefaultEncoding && Py_FileSystemDefaultEncoding) { | ||||
|         free((char*)Py_FileSystemDefaultEncoding); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Antoine Pitrou
						Antoine Pitrou