1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-27 18:02:13 +03:00

MDEV-26713 Set activeCodePage=UTF8 for windows programs

- Use corresponding entry in the manifest, as described in
https://docs.microsoft.com/en-us/windows/apps/design/globalizing/use-utf8-code-page

- If if ANSI codepage is UTF8 (i.e for Windows 1903 and later)
  Use UTF8 as default client charset
  Set console codepage(s) to UTF8, in case process is using console

- Allow some previously disabled MTR tests, that used Unicode for in "exec",
  for the recent Windows versions
This commit is contained in:
Vladislav Vaintroub
2021-11-22 12:29:15 +01:00
committed by Sergei Golubchik
parent 4d3ac32848
commit ba9d231b5a
13 changed files with 174 additions and 10 deletions

View File

@ -87,6 +87,28 @@ sub skip_combinations {
$skip{'main/ssl_verify_ip.test'} = 'x509v3 support required'
unless $openssl_ver ge "1.0.2";
sub utf8_command_line_ok() {
if (IS_WINDOWS) {
# Can use UTF8 on command line since Windows 10 1903 (10.0.18362)
# or if OS codepage is set to UTF8
my($os_name, $os_major, $os_minor, $os_build, $os_id) = Win32::GetOSVersion();
if($os_major lt 10){
return 0;
} elsif($os_major gt 10 or $os_minor gt 0 or $os_build ge 18362){
return 1;
} elsif(Win32::GetACP() eq 65001) {
return 1;
}
return 0;
}
return 1;
}
$skip{'include/check_utf8_cli.inc'} = 'No utf8 command line support'
unless utf8_command_line_ok();
$skip{'include/no_utf8_cli.inc'} = 'Not tested with utf8 command line support'
unless !utf8_command_line_ok();
%skip;
}