mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	bpo-36346: Make using the legacy Unicode C API optional (GH-21437)
Add compile time option USE_UNICODE_WCHAR_CACHE. Setting it to 0 makes the interpreter not using the wchar_t cache and the legacy Unicode C API.
This commit is contained in:
		
							parent
							
								
									9650fe0197
								
							
						
					
					
						commit
						4c8f09d7ce
					
				
					 17 changed files with 360 additions and 99 deletions
				
			
		|  | @ -166,11 +166,14 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix, | |||
| { | ||||
|     dl_funcptr p; | ||||
|     char funcname[258], *import_python; | ||||
|     const wchar_t *wpathname; | ||||
| 
 | ||||
|     _Py_CheckPython3(); | ||||
| 
 | ||||
|     wpathname = _PyUnicode_AsUnicode(pathname); | ||||
| #if USE_UNICODE_WCHAR_CACHE | ||||
|     const wchar_t *wpathname = _PyUnicode_AsUnicode(pathname); | ||||
| #else /* USE_UNICODE_WCHAR_CACHE */ | ||||
|     wchar_t *wpathname = PyUnicode_AsWideCharString(pathname, NULL); | ||||
| #endif /* USE_UNICODE_WCHAR_CACHE */ | ||||
|     if (wpathname == NULL) | ||||
|         return NULL; | ||||
| 
 | ||||
|  | @ -192,6 +195,9 @@ dl_funcptr _PyImport_FindSharedFuncptrWindows(const char *prefix, | |||
|                               LOAD_LIBRARY_SEARCH_DEFAULT_DIRS | | ||||
|                               LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR); | ||||
|         Py_END_ALLOW_THREADS | ||||
| #if !USE_UNICODE_WCHAR_CACHE | ||||
|         PyMem_Free(wpathname); | ||||
| #endif /* USE_UNICODE_WCHAR_CACHE */ | ||||
| 
 | ||||
|         /* restore old error mode settings */ | ||||
|         SetErrorMode(old_mode); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Serhiy Storchaka
						Serhiy Storchaka