История изменений
Исправление Manhunt, (текущая версия) :
используем всё то, где есть преобразования между Юникодами
Разве c32rtomb - это преобразование между юникодами, а не преобразование между юникодом и текущей локалью?
int rc = c32rtomb
Разве возвращается int, а не size_t?
Возвращаемое значение на -1 проверять не нужно?
out[rc] = '\0';
Не может ли в некоторых локалях получиться так, что часть байтов останется в state до следующего вызова c32rtomb(), а не попадет сразу в out?
Исправление Manhunt, :
используем всё то, где есть преобразования между Юникодами
Разве c32rtomb - это преобразование между юникодами, а не преобразование между юникодом и текущей локалью?
int rc = c32rtomb
Разве возвращается int, а не size_t?
Возвращаемое значение на -1 проверять не нужно?
out[rc] = '\0';
Не может ли в некоторых локалях получиться так, что часть байт останется в state до следующего вызова c32rtomb(), а не попадет сразу в out?
Исходная версия Manhunt, :
используем всё то, где есть преобразования между Юникодами
Разве c32rtomb преобразование между юникодами, а не преобразование между юникодом и текущей локалью?
int rc = c32rtomb
Разве возвращается int, а не size_t?
Возвращаемое значение на -1 проверять не нужно?
out[rc] = '\0';
Не может ли в некоторых локалях получиться так, что часть байт останется в state до следующего вызова c32rtomb(), а не попадет сразу в out?