small improvement
This commit is contained in:
parent
8cbadb70ff
commit
66d038dbe3
@ -1,7 +1,7 @@
|
|||||||
/**
|
/**
|
||||||
* A Character Encoding Set Implementation
|
* A Character Encoding Set Implementation
|
||||||
* Nana C++ Library(http://www.nanapro.org)
|
* Nana C++ Library(http://www.nanapro.org)
|
||||||
* Copyright(C) 2003-2018 Jinhao(cnjinhao@hotmail.com)
|
* Copyright(C) 2003-2019 Jinhao(cnjinhao@hotmail.com)
|
||||||
*
|
*
|
||||||
* Distributed under the Boost Software License, Version 1.0.
|
* Distributed under the Boost Software License, Version 1.0.
|
||||||
* (See accompanying file LICENSE_1_0.txt or copy at
|
* (See accompanying file LICENSE_1_0.txt or copy at
|
||||||
@ -245,8 +245,12 @@ namespace nana
|
|||||||
int bytes = ::WideCharToMultiByte(CP_ACP, 0, s, -1, 0, 0, 0, 0);
|
int bytes = ::WideCharToMultiByte(CP_ACP, 0, s, -1, 0, 0, 0, 0);
|
||||||
if(bytes > 1)
|
if(bytes > 1)
|
||||||
{
|
{
|
||||||
mbstr.resize(bytes - 1);
|
// the bytes is the length of the string with null character.
|
||||||
|
mbstr.resize(bytes);
|
||||||
::WideCharToMultiByte(CP_ACP, 0, s, -1, &(mbstr[0]), bytes, 0, 0);
|
::WideCharToMultiByte(CP_ACP, 0, s, -1, &(mbstr[0]), bytes, 0, 0);
|
||||||
|
|
||||||
|
//Remove the null character written by WideCharToMultiByte
|
||||||
|
mbstr.pop_back();
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
#else
|
#else
|
||||||
@ -279,8 +283,12 @@ namespace nana
|
|||||||
int chars = ::MultiByteToWideChar(CP_ACP, 0, s, -1, 0, 0);
|
int chars = ::MultiByteToWideChar(CP_ACP, 0, s, -1, 0, 0);
|
||||||
if(chars > 1)
|
if(chars > 1)
|
||||||
{
|
{
|
||||||
wcstr.resize(chars - 1);
|
// the length of the string with null character.
|
||||||
|
wcstr.resize(chars);
|
||||||
::MultiByteToWideChar(CP_ACP, 0, s, -1, &wcstr[0], chars);
|
::MultiByteToWideChar(CP_ACP, 0, s, -1, &wcstr[0], chars);
|
||||||
|
|
||||||
|
// remove the null character written by MultiByteToWideChar
|
||||||
|
wcstr.pop_back();
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
locale_initializer::init();
|
locale_initializer::init();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user