Text input: Clearly use 16-bit chars like the PSP, don't rely on wchar_t.

This commit is contained in:
Henrik Rydgård committed 2020-03-22 16:44:19 +01:00
1 parent 03b9c40fae
commit 75cdc11fdb
7 files changed
+105 -87

No files matched your search

+13
View File
@@ -117,6 +117,19 @@ void PointerWrap::Do(std::wstring &x) {
(*ptr) += stringLen;
}
void PointerWrap::Do(std::u16string &x) {
int stringLen = sizeof(char16_t) * ((int)x.length() + 1);
Do(stringLen);
switch (mode) {
case MODE_READ: x = (char16_t*)*ptr; break;
case MODE_WRITE: memcpy(*ptr, x.c_str(), stringLen); break;
case MODE_MEASURE: break;
case MODE_VERIFY: _dbg_assert_msg_(COMMON, x == (char16_t*)*ptr, "Savestate verification failure: (at %p).\n", x.c_str()); break;
}
(*ptr) += stringLen;
}
struct standard_tm {
int tm_sec;
int tm_min;