Fix bad lengths for utf-8 strings in text_file_writer.cpp

Originally committed to SVN as r4647.
This commit is contained in:
Thomas Goyne 2010-06-30 01:18:35 +00:00
parent ce4babb192
commit 8bd5b16699

View file

@ -91,7 +91,11 @@ void TextFileWriter::WriteLineToFile(wxString line, bool addLineBreak) {
// On non-windows this cast does nothing // On non-windows this cast does nothing
const char *data = reinterpret_cast<const char *>(line.wx_str()); const char *data = reinterpret_cast<const char *>(line.wx_str());
size_t len = line.size() * sizeof(wxStringCharType); #if wxUSE_UNICODE_UTF8
size_t len = line.utf8_length();
#else
size_t len = line.length() * sizeof(wxStringCharType);
#endif
if (conv.get()) { if (conv.get()) {
std::string buf = conv->Convert(std::string(data, len)); std::string buf = conv->Convert(std::string(data, len));