string16 improvements
This commit is contained in:
@@ -45,7 +45,7 @@ fn s8_t os_exe(ma_arena_t *arena) {
|
||||
ssize_t size = readlink("/proc/self/exe", buffer, buffer_size);
|
||||
assert(size < buffer_size); // @todo:?
|
||||
assert(size != -1);
|
||||
s8_t string = s8_copy(arena, s8(buffer, size));
|
||||
s8_t string = s8_copy(arena, s8_make(buffer, size));
|
||||
ma_end_scratch(temp);
|
||||
return string;
|
||||
}
|
||||
@@ -122,7 +122,7 @@ fn s8_t os_read(ma_arena_t *arena, s8_t path) {
|
||||
fread(string, size, 1, fd);
|
||||
fclose(fd);
|
||||
|
||||
result = s8(string, size);
|
||||
result = s8_make(string, size);
|
||||
result.str[result.len] = 0;
|
||||
}
|
||||
ma_end_scratch(temp);
|
||||
|
||||
@@ -151,7 +151,7 @@ fn void os_advance(os_iter_t *it) {
|
||||
if (data->cFileName[0] == '.' && data->cFileName[1] == 0) continue;
|
||||
|
||||
it->is_directory = data->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY;
|
||||
it->name = s8_from_s16(it->arena, s16(data->cFileName, wstr_len(data->cFileName)));
|
||||
it->name = s8_from_s16(it->arena, s16_make(data->cFileName, str16_len(data->cFileName)));
|
||||
char *is_dir = it->is_directory ? "/" : "";
|
||||
char *separator = it->path.str[it->path.len - 1] == '/' ? "" : "/";
|
||||
it->rel = s8_printf(it->arena, "%S%s%S%s", it->path, separator, it->name, is_dir);
|
||||
@@ -220,7 +220,7 @@ fn s8_t os_abs(ma_arena_t *arena, s8_t rel) {
|
||||
DWORD written = GetFullPathNameW(rel16.str, buffer_size, buffer, 0);
|
||||
assert(written != 0);
|
||||
assert((i64)written < (i64)buffer_size);
|
||||
s8_t result = s8_from_s16(arena, s16(buffer, written));
|
||||
s8_t result = s8_from_s16(arena, s16_make(buffer, written));
|
||||
ma_end_scratch(scratch);
|
||||
return result;
|
||||
}
|
||||
@@ -231,7 +231,7 @@ fn s8_t os_exe(ma_arena_t *arena) {
|
||||
wchar_t *buffer = ma_push_array(scratch.arena, wchar_t, buffer_size);
|
||||
DWORD wsize = GetModuleFileNameW(0, buffer, buffer_size);
|
||||
assert(wsize != 0);
|
||||
s8_t result = s8_from_s16(arena, s16(buffer, wsize));
|
||||
s8_t result = s8_from_s16(arena, s16_make(buffer, wsize));
|
||||
s8_normalize_path_unsafe(result);
|
||||
ma_end_scratch(scratch);
|
||||
return result;
|
||||
@@ -283,7 +283,7 @@ fn s8_t os_cwd(ma_arena_t *arena) {
|
||||
DWORD wsize = GetCurrentDirectoryW(buffer_size, buffer);
|
||||
assert(wsize != 0);
|
||||
assert(wsize <= buffer_size);
|
||||
s8_t path = s8_from_s16(scratch.arena, s16(buffer, wsize));
|
||||
s8_t path = s8_from_s16(scratch.arena, s16_make(buffer, wsize));
|
||||
s8_normalize_path_unsafe(path);
|
||||
s8_t result = s8_printf(arena, "%S/", path);
|
||||
ma_end_scratch(scratch);
|
||||
|
||||
Reference in New Issue
Block a user