chore: run clang-format

This commit is contained in:
MechSlayer 2025-09-09 04:01:11 +02:00
parent 053f4f9043
commit 2194e4c805
8 changed files with 75 additions and 73 deletions

View file

@ -173,6 +173,4 @@ DRANG_PLATFORM_API const char *drang_error_str(int err);
*/ */
#define DRANG_FAIL_IF_NULL_OOM(ptr) DRANG_FAIL_IF_NULL(ptr, DRANG_ENOMEM) #define DRANG_FAIL_IF_NULL_OOM(ptr) DRANG_FAIL_IF_NULL(ptr, DRANG_ENOMEM)
DRANG_END_DECLS DRANG_END_DECLS

View file

@ -1,8 +1,8 @@
#pragma once #pragma once
#include "platform.h" #include "platform.h"
#include <stdbool.h> #include <stdbool.h>
#include <stdint.h>
#include <stddef.h> #include <stddef.h>
#include <stdint.h>
DRANG_BEGIN_DECLS DRANG_BEGIN_DECLS

View file

@ -36,7 +36,6 @@
# define DRANG_ALLOC_ALIGN_ATTR(idx) __attribute__((alloc_align(idx))) # define DRANG_ALLOC_ALIGN_ATTR(idx) __attribute__((alloc_align(idx)))
# define DRANG_MALLOC_ATTR __attribute__((malloc)) # define DRANG_MALLOC_ATTR __attribute__((malloc))
# define DRANG_BIT_CAST(_Expr_, _From_, _To_) __builtin_bit_cast(_To_, _Expr_) # define DRANG_BIT_CAST(_Expr_, _From_, _To_) __builtin_bit_cast(_To_, _Expr_)
# define DRANG_MUL_OVERFLOW(_A_, _B_, _Result_) (__builtin_mul_overflow(_A_, _B_, _Result_) != 0) # define DRANG_MUL_OVERFLOW(_A_, _B_, _Result_) (__builtin_mul_overflow(_A_, _B_, _Result_) != 0)

View file

@ -40,15 +40,24 @@ static int mode_to_open_flags(const drang_fs_mode_t mode)
static int drang_permissions_to_linux(const drang_fs_permissions_t permissions) static int drang_permissions_to_linux(const drang_fs_permissions_t permissions)
{ {
int result = 0; int result = 0;
if (permissions & DRANG_FS_PERM_USER_READ) result |= S_IRUSR; if (permissions & DRANG_FS_PERM_USER_READ)
if (permissions & DRANG_FS_PERM_USER_WRITE) result |= S_IWUSR; result |= S_IRUSR;
if (permissions & DRANG_FS_PERM_USER_EXEC) result |= S_IXUSR; if (permissions & DRANG_FS_PERM_USER_WRITE)
if (permissions & DRANG_FS_PERM_GROUP_READ) result |= S_IRGRP; result |= S_IWUSR;
if (permissions & DRANG_FS_PERM_GROUP_WRITE) result |= S_IWGRP; if (permissions & DRANG_FS_PERM_USER_EXEC)
if (permissions & DRANG_FS_PERM_GROUP_EXEC) result |= S_IXGRP; result |= S_IXUSR;
if (permissions & DRANG_FS_PERM_OTHER_READ) result |= S_IROTH; if (permissions & DRANG_FS_PERM_GROUP_READ)
if (permissions & DRANG_FS_PERM_OTHER_WRITE) result |= S_IWOTH; result |= S_IRGRP;
if (permissions & DRANG_FS_PERM_OTHER_EXEC) result |= S_IXOTH; if (permissions & DRANG_FS_PERM_GROUP_WRITE)
result |= S_IWGRP;
if (permissions & DRANG_FS_PERM_GROUP_EXEC)
result |= S_IXGRP;
if (permissions & DRANG_FS_PERM_OTHER_READ)
result |= S_IROTH;
if (permissions & DRANG_FS_PERM_OTHER_WRITE)
result |= S_IWOTH;
if (permissions & DRANG_FS_PERM_OTHER_EXEC)
result |= S_IXOTH;
return result; return result;
} }
@ -60,7 +69,6 @@ int drang_fs_open(const char *path, drang_fs_mode_t mode, drang_fs_file_t **out_
DRANG_FAIL_IF_NULL(path, DRANG_EINVAL); DRANG_FAIL_IF_NULL(path, DRANG_EINVAL);
DRANG_FAIL_IF_NULL(out_file, DRANG_EINVAL); DRANG_FAIL_IF_NULL(out_file, DRANG_EINVAL);
const int oflags = mode_to_open_flags(mode); const int oflags = mode_to_open_flags(mode);
DRANG_CHECK(oflags != 0, DRANG_EINVAL); DRANG_CHECK(oflags != 0, DRANG_EINVAL);
@ -77,7 +85,6 @@ int drang_fs_open(const char *path, drang_fs_mode_t mode, drang_fs_file_t **out_
file->mode = mode; file->mode = mode;
DRANG_RETURN_IN(out_file, file); DRANG_RETURN_IN(out_file, file);
DRANG_CATCH(_) DRANG_CATCH(_)
{ {
if (file != NULL) { if (file != NULL) {
@ -92,7 +99,8 @@ int drang_fs_open(const char *path, drang_fs_mode_t mode, drang_fs_file_t **out_
int drang_fs_close(drang_fs_file_t *file) int drang_fs_close(drang_fs_file_t *file)
{ {
bool locked = false; bool locked = false;
if (file == NULL) return DRANG_EOK; if (file == NULL)
return DRANG_EOK;
DRANG_BEGIN_TRY() DRANG_BEGIN_TRY()
DRANG_TRY(drang_fs_flush(file)); DRANG_TRY(drang_fs_flush(file));
@ -137,7 +145,6 @@ int drang_fs_read(drang_fs_file_t *file, void *buffer, size_t count, size_t size
size_t total_bytes = 0; size_t total_bytes = 0;
DRANG_CHECK(!DRANG_MUL_OVERFLOW(count, size, &total_bytes), DRANG_EOVERFLOW); DRANG_CHECK(!DRANG_MUL_OVERFLOW(count, size, &total_bytes), DRANG_EOVERFLOW);
DRANG_TRY(drang_rwlock_rdlock(&file->lock)); DRANG_TRY(drang_rwlock_rdlock(&file->lock));
locked = true; locked = true;
@ -161,8 +168,7 @@ int drang_fs_read(drang_fs_file_t *file, void *buffer, size_t count, size_t size
DRANG_END_TRY() DRANG_END_TRY()
} }
int drang_fs_write( int drang_fs_write(drang_fs_file_t *file, const void *buffer, size_t count, size_t size, size_t *bytes_written)
drang_fs_file_t *file, const void *buffer, size_t count, size_t size, size_t *bytes_written)
{ {
bool locked = false; bool locked = false;
DRANG_BEGIN_TRY() DRANG_BEGIN_TRY()
@ -173,7 +179,6 @@ int drang_fs_write(
DRANG_CHECK(file->mode & (drang_fs_mode_write | drang_fs_mode_append), DRANG_EPERM); DRANG_CHECK(file->mode & (drang_fs_mode_write | drang_fs_mode_append), DRANG_EPERM);
DRANG_CHECK(count > 0 && size > 0, DRANG_EINVAL); DRANG_CHECK(count > 0 && size > 0, DRANG_EINVAL);
size_t total_bytes = 0; size_t total_bytes = 0;
DRANG_CHECK(!DRANG_MUL_OVERFLOW(count, size, &total_bytes), DRANG_EOVERFLOW); DRANG_CHECK(!DRANG_MUL_OVERFLOW(count, size, &total_bytes), DRANG_EOVERFLOW);
DRANG_TRY(drang_rwlock_wrlock(&file->lock)); DRANG_TRY(drang_rwlock_wrlock(&file->lock));
@ -226,7 +231,6 @@ int drang_fs_seek(drang_fs_file_t *file, int64_t offset, drang_seek_origin_t ori
DRANG_FAIL(drang_errno_to_error(errno)); DRANG_FAIL(drang_errno_to_error(errno));
} }
drang_rwlock_wrunlock(&file->lock); drang_rwlock_wrunlock(&file->lock);
DRANG_CATCH(_) DRANG_CATCH(_)
@ -358,7 +362,6 @@ int drang_fs_move(const char *old_path, const char *new_path)
DRANG_RETURN(); DRANG_RETURN();
} }
if (errno == EXDEV) { // Cross-device link, need to copy+delete if (errno == EXDEV) { // Cross-device link, need to copy+delete
struct stat src_stat = {0}; struct stat src_stat = {0};
@ -450,18 +453,26 @@ int drang_fs_stat(const char *path, struct drang_fs_stat *out_stat)
out_stat->type = drang_fs_type_unknown; out_stat->type = drang_fs_type_unknown;
} }
out_stat->size = (uint64_t) st.st_size; out_stat->size = (uint64_t) st.st_size;
out_stat->permissions = 0; out_stat->permissions = 0;
if (st.st_mode & S_IRUSR) out_stat->permissions |= DRANG_FS_PERM_USER_READ; if (st.st_mode & S_IRUSR)
if (st.st_mode & S_IWUSR) out_stat->permissions |= DRANG_FS_PERM_USER_WRITE; out_stat->permissions |= DRANG_FS_PERM_USER_READ;
if (st.st_mode & S_IXUSR) out_stat->permissions |= DRANG_FS_PERM_USER_EXEC; if (st.st_mode & S_IWUSR)
if (st.st_mode & S_IRGRP) out_stat->permissions |= DRANG_FS_PERM_GROUP_READ; out_stat->permissions |= DRANG_FS_PERM_USER_WRITE;
if (st.st_mode & S_IWGRP) out_stat->permissions |= DRANG_FS_PERM_GROUP_WRITE; if (st.st_mode & S_IXUSR)
if (st.st_mode & S_IXGRP) out_stat->permissions |= DRANG_FS_PERM_GROUP_EXEC; out_stat->permissions |= DRANG_FS_PERM_USER_EXEC;
if (st.st_mode & S_IROTH) out_stat->permissions |= DRANG_FS_PERM_OTHER_READ; if (st.st_mode & S_IRGRP)
if (st.st_mode & S_IWOTH) out_stat->permissions |= DRANG_FS_PERM_OTHER_WRITE; out_stat->permissions |= DRANG_FS_PERM_GROUP_READ;
if (st.st_mode & S_IXOTH) out_stat->permissions |= DRANG_FS_PERM_OTHER_EXEC; if (st.st_mode & S_IWGRP)
out_stat->permissions |= DRANG_FS_PERM_GROUP_WRITE;
if (st.st_mode & S_IXGRP)
out_stat->permissions |= DRANG_FS_PERM_GROUP_EXEC;
if (st.st_mode & S_IROTH)
out_stat->permissions |= DRANG_FS_PERM_OTHER_READ;
if (st.st_mode & S_IWOTH)
out_stat->permissions |= DRANG_FS_PERM_OTHER_WRITE;
if (st.st_mode & S_IXOTH)
out_stat->permissions |= DRANG_FS_PERM_OTHER_EXEC;
out_stat->created_time = (drang_fs_time_t) st.st_ctim.tv_sec * 1000000000 + st.st_ctim.tv_nsec; out_stat->created_time = (drang_fs_time_t) st.st_ctim.tv_sec * 1000000000 + st.st_ctim.tv_nsec;
out_stat->modified_time = (drang_fs_time_t) st.st_mtim.tv_sec * 1000000000 + st.st_mtim.tv_nsec; out_stat->modified_time = (drang_fs_time_t) st.st_mtim.tv_sec * 1000000000 + st.st_mtim.tv_nsec;
@ -479,6 +490,5 @@ int drang_fs_set_permissions(const char *path, drang_fs_permissions_t permission
DRANG_FAIL(drang_errno_to_error(errno)); DRANG_FAIL(drang_errno_to_error(errno));
} }
DRANG_END_TRY_IGNORE() DRANG_END_TRY_IGNORE()
} }

View file

@ -1,7 +1,7 @@
#pragma once #pragma once
#include "linux/sync/internal.h"
#include <drang/fs.h> #include <drang/fs.h>
#include <unistd.h> #include <unistd.h>
#include "linux/sync/internal.h"
#define DRANG_LINUX_FS_BUFFER_SIZE (4096) #define DRANG_LINUX_FS_BUFFER_SIZE (4096)

View file

@ -3,7 +3,6 @@
#include <Windows.h> #include <Windows.h>
#include <drang/platform.h> #include <drang/platform.h>
DRANG_BEGIN_DECLS DRANG_BEGIN_DECLS
DRANG_PLATFORM_API int win32_error_to_drang(DWORD error); DRANG_PLATFORM_API int win32_error_to_drang(DWORD error);

View file

@ -392,11 +392,10 @@ int drang_fs_stat(const char *path, struct drang_fs_stat *out_stat)
} }
// For directories and executables, add execute permissions // For directories and executables, add execute permissions
if ((file_data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) || if ((file_data.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
(strlen(path) > 4 && || (strlen(path) > 4
(_stricmp(path + strlen(path) - 4, ".exe") == 0 || && (_stricmp(path + strlen(path) - 4, ".exe") == 0 || _stricmp(path + strlen(path) - 4, ".bat") == 0
_stricmp(path + strlen(path) - 4, ".bat") == 0 || || _stricmp(path + strlen(path) - 4, ".cmd") == 0))) {
_stricmp(path + strlen(path) - 4, ".cmd") == 0))) {
out_stat->permissions |= DRANG_FS_PERM_USER_EXEC | DRANG_FS_PERM_GROUP_EXEC | DRANG_FS_PERM_OTHER_EXEC; out_stat->permissions |= DRANG_FS_PERM_USER_EXEC | DRANG_FS_PERM_GROUP_EXEC | DRANG_FS_PERM_OTHER_EXEC;
} }
@ -406,18 +405,18 @@ int drang_fs_stat(const char *path, struct drang_fs_stat *out_stat)
const uint64_t WINDOWS_EPOCH_DIFF = 11644473600ULL; // Seconds between 1601 and 1970 const uint64_t WINDOWS_EPOCH_DIFF = 11644473600ULL; // Seconds between 1601 and 1970
// Convert creation time // Convert creation time
uint64_t created_100ns = ((uint64_t)file_data.ftCreationTime.dwHighDateTime << 32) | uint64_t created_100ns = ((uint64_t) file_data.ftCreationTime.dwHighDateTime << 32)
file_data.ftCreationTime.dwLowDateTime; | file_data.ftCreationTime.dwLowDateTime;
out_stat->created_time = (created_100ns / 10000000ULL) - WINDOWS_EPOCH_DIFF; out_stat->created_time = (created_100ns / 10000000ULL) - WINDOWS_EPOCH_DIFF;
// Convert modification time // Convert modification time
uint64_t modified_100ns = ((uint64_t)file_data.ftLastWriteTime.dwHighDateTime << 32) | uint64_t modified_100ns = ((uint64_t) file_data.ftLastWriteTime.dwHighDateTime << 32)
file_data.ftLastWriteTime.dwLowDateTime; | file_data.ftLastWriteTime.dwLowDateTime;
out_stat->modified_time = (modified_100ns / 10000000ULL) - WINDOWS_EPOCH_DIFF; out_stat->modified_time = (modified_100ns / 10000000ULL) - WINDOWS_EPOCH_DIFF;
// Convert access time // Convert access time
uint64_t accessed_100ns = ((uint64_t)file_data.ftLastAccessTime.dwHighDateTime << 32) | uint64_t accessed_100ns = ((uint64_t) file_data.ftLastAccessTime.dwHighDateTime << 32)
file_data.ftLastAccessTime.dwLowDateTime; | file_data.ftLastAccessTime.dwLowDateTime;
out_stat->accessed_time = (accessed_100ns / 10000000ULL) - WINDOWS_EPOCH_DIFF; out_stat->accessed_time = (accessed_100ns / 10000000ULL) - WINDOWS_EPOCH_DIFF;
DRANG_END_TRY_IGNORE() DRANG_END_TRY_IGNORE()

View file

@ -5,12 +5,9 @@
#include "../sync/internal.h" #include "../sync/internal.h"
struct drang_fs_file struct drang_fs_file
{ {
HANDLE handle; HANDLE handle;
drang_fs_mode_t mode; drang_fs_mode_t mode;
struct drang_rwlock lock; struct drang_rwlock lock;
}; };