mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
MDEV-27525 Invalid (non-UTF8) characters found for option 'plugin_dir'
Two Problems 1. Upgrade wizard failed to retrieve path to service executable, if it contained non-ASCII. Fixed by setlocale(LC_ALL, "en_US.UTF8"), which was missing in upgrade wizard 2.mysql_upgrade_service only updated (converted to UTF8) the server's sections leaving client's as-is Corrected typo. 3. Fixed assertion in my_getopt, turns out to be too strict.
This commit is contained in:
parent
71966c7306
commit
2e48fbe3f5
3 changed files with 7 additions and 6 deletions
|
@ -163,11 +163,6 @@ static void validate_value(const char *key, const char *value,
|
|||
}
|
||||
else
|
||||
{
|
||||
/*
|
||||
Should never happen, non-UTF8 can be read from option's
|
||||
file only.
|
||||
*/
|
||||
DBUG_ASSERT(0);
|
||||
my_getopt_error_reporter(
|
||||
WARNING_LEVEL, "%s: invalid (non-UTF8) characters for option %s",
|
||||
my_progname, key);
|
||||
|
|
|
@ -288,7 +288,7 @@ static bool is_mariadb_section(const char *name, bool *is_server)
|
|||
if (*is_server= !strcmp(section_name, name))
|
||||
break;
|
||||
|
||||
return *is_server;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
#include <vector>
|
||||
|
||||
#include <winservice.h>
|
||||
#include <locale.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
|
@ -271,6 +272,11 @@ BOOL CUpgradeDlg::OnInitDialog()
|
|||
|
||||
m_Progress.ShowWindow(SW_HIDE);
|
||||
m_Ok.EnableWindow(FALSE);
|
||||
if (GetACP() == CP_UTF8)
|
||||
{
|
||||
/* Required for mbstowcs, used in some functions.*/
|
||||
setlocale(LC_ALL, "en_US.UTF8");
|
||||
}
|
||||
PopulateServicesList();
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue