diff options
author | Gluzskiy Alexandr <sss123next@list.ru> | 2010-11-30 20:05:12 +0200 |
---|---|---|
committer | Gluzskiy Alexandr <sss123next@list.ru> | 2010-11-30 20:05:12 +0200 |
commit | d16c6a6d264b91d545e4baa24b2d9efd06ec0260 (patch) | |
tree | 86cf152cd85e7241197812554ee4f7e211b4292f /utilities.cpp | |
parent | 46f48e58a81256148f74e5d753c708dd1ff3d563 (diff) | |
parent | b9278adb04c824b47da7ac0ec7c1c8ef5931c888 (diff) |
Merge branch 'new_gpg' into new_gpg_autoexchange
Diffstat (limited to 'utilities.cpp')
-rw-r--r-- | utilities.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/utilities.cpp b/utilities.cpp index 4f594cb..b462a23 100644 --- a/utilities.cpp +++ b/utilities.cpp @@ -438,7 +438,7 @@ void HistoryLog(HANDLE hContact, char *data, int event_type, int flags) Event.cbSize = sizeof(Event); Event.szModule = szGPGModuleName; Event.eventType = event_type; - Event.flags = flags, DBEF_UTF; + Event.flags = flags; Event.timestamp = (DWORD)time(NULL); Event.cbBlob = strlen(data)+1; Event.pBlob = (PBYTE)_strdup(data); @@ -934,10 +934,22 @@ int returnNoError(HANDLE hContact) { string toUTF8(wstring str)
{
string ustr;
- utf8::utf16to8(str.begin(), str.end(), back_inserter(ustr));
+ wstring tmpstr;
+ utf8::replace_invalid(str.begin(), str.end(), back_inserter(tmpstr));
+ utf8::utf16to8(tmpstr.begin(), tmpstr.end(), back_inserter(ustr));
+ return ustr;
+}
+
+string toUTF8(string str)
+{
+ string ustr;
+ wstring tmpstr;
+ utf8::replace_invalid(str.begin(), str.end(), back_inserter(tmpstr));
+ utf8::utf16to8(tmpstr.begin(), tmpstr.end(), back_inserter(ustr));
return ustr;
}
+
wstring toUTF16(string str) //convert as much as possible
{
wstring ustr;
|