On Mon, 3 Nov 2025 23:48:22 GMT, Justin Lu <[email protected]> wrote:

> This PR cleans up some native code for Windows i18n functions. These 
> particular calls are designed to run on Windows Vista and later. Since Vista 
> (and older) are not supported Windows platforms, the calls no longer need to 
> be checked if they are supported and can be called directly.
> 
> Reference to docs: 
> https://learn.microsoft.com/en-us/windows/win32/api/winnls/nf-winnls-getlocaleinfoex.
> 
>> Minimum supported client:    Windows Vista
>> Minimum supported server:    Windows Server 2008

I think we can clean it further, as we don't need to call Win32 through their 
function pointers. Specifically,

typedef int (WINAPI *PGLIE)(const jchar *, LCTYPE, LPWSTR, int);
typedef int (WINAPI *PGCIE)(const jchar *, CALID, LPCWSTR, CALTYPE, LPWSTR, 
int, LPDWORD);
typedef int (WINAPI *PECIEE)(CALINFO_ENUMPROCEXEX, const jchar *, CALID, 
LPCWSTR, CALTYPE, LPARAM);
PGLIE pGetLocaleInfoEx;
PGCIE pGetCalendarInfoEx;
PECIEE pEnumCalendarInfoExEx;
BOOL initialized = FALSE;

and it's init code can all go away, IIUC

-------------

PR Comment: https://git.openjdk.org/jdk/pull/28119#issuecomment-3483228621

Reply via email to