linux PIString fix
This commit is contained in:
@@ -233,18 +233,18 @@ void PIString::appendFromChars(const char * c, int s, const char * codepage) {
|
||||
# else
|
||||
mbstate_t state;
|
||||
memset(&state, 0, sizeof(state));
|
||||
char * pc;
|
||||
const char ** pc;
|
||||
if (s > 0) {
|
||||
char c_ [s+1];
|
||||
memcpy(c_, c, s);
|
||||
c_[s] = '\0';
|
||||
pc = c_;
|
||||
pc = &c_;
|
||||
} else {
|
||||
pc = c;
|
||||
pc = &c;
|
||||
}
|
||||
size_t len = mbsrtowcs(NULL, (const char**)&pc, 0, &state);
|
||||
size_t len = mbsrtowcs(NULL, pc, 0, &state);
|
||||
wchar_t wstr[len+1];
|
||||
mbsrtowcs(&wstr[0], (const char**)&pc, len+1, &state);
|
||||
mbsrtowcs(&wstr[0], pc, len+1, &state);
|
||||
enlarge(len);
|
||||
for (size_t i=0; i<len; ++i) (*this)[old_sz+i] = wstr[i];
|
||||
// //qDebug() << "FromChars done" << size();
|
||||
|
||||
Reference in New Issue
Block a user