mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 21:51:50 +00:00 
			
		
		
		
	[3.13] gh-122712: Guard against __code__ reassignment in CALL_ALLOC_AND_ENTER_INIT (GH-122713) (GH-123184)
This commit is contained in:
		
							parent
							
								
									159db050f4
								
							
						
					
					
						commit
						50a595b37f
					
				
					 3 changed files with 36 additions and 7 deletions
				
			
		|  | @ -3407,6 +3407,8 @@ dummy_func( | |||
|             PyFunctionObject *init = (PyFunctionObject *)cls->_spec_cache.init; | ||||
|             PyCodeObject *code = (PyCodeObject *)init->func_code; | ||||
|             DEOPT_IF(code->co_argcount != oparg+1); | ||||
|             DEOPT_IF((code->co_flags & (CO_VARKEYWORDS | CO_VARARGS | CO_OPTIMIZED)) != CO_OPTIMIZED); | ||||
|             DEOPT_IF(code->co_kwonlyargcount); | ||||
|             DEOPT_IF(!_PyThreadState_HasStackSpace(tstate, code->co_framesize + _Py_InitCleanup.co_framesize)); | ||||
|             STAT_INC(CALL, hit); | ||||
|             PyObject *self = _PyType_NewManagedObject(tp); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 mpage
						mpage