String16, commands, Lua_New, layout next, build and encodings

This commit is contained in:
Krzosa Karol
2024-08-16 15:40:18 +02:00
parent afd4e1d21c
commit 1c0063e834
11 changed files with 237 additions and 61 deletions

View File

@@ -1152,7 +1152,7 @@ UTF8Result UTF32ToUTF8(uint32_t codepoint) {
return result;
}
UTF32Result UTF8ToUTF32(char *c, int64_t max_advance) {
UTF32Result UTF8ToUTF32(uint8_t *c, int64_t max_advance) {
UTF32Result result;
MemoryZero(&result, sizeof(result));
@@ -1242,7 +1242,7 @@ int64_t CreateCharFromWidechar(char *buffer, int64_t buffer_size, wchar_t *in, i
int64_t CreateWidecharFromChar(wchar_t *buffer, int64_t buffer_size, char *in, int64_t inlen) {
int64_t outlen = 0;
for (int64_t i = 0; i < inlen;) {
UTF32Result decode = UTF8ToUTF32(in + i, (int64_t)(inlen - i));
UTF32Result decode = UTF8ToUTF32((uint8_t *)(in + i), (int64_t)(inlen - i));
if (!decode.error) {
i += decode.advance;
UTF16Result encode = UTF32ToUTF16(decode.out_str);
@@ -1266,7 +1266,7 @@ bool IsValid(UTF8Iter &iter) {
void Advance(UTF8Iter *iter) {
iter->i += iter->utf8_codepoint_byte_size;
UTF32Result r = UTF8ToUTF32(iter->data + iter->i, iter->len - iter->i);
UTF32Result r = UTF8ToUTF32((uint8_t *)(iter->data + iter->i), iter->len - iter->i);
if (r.error) {
iter->item = 0;
return;