diff options
| author | Soikk | 2025-06-12 21:01:15 +0200 |
|---|---|---|
| committer | Soikk | 2025-06-12 21:01:15 +0200 |
| commit | de4a44205f754ed928149303be4ffd419834f492 (patch) | |
| tree | 544306101b161a70bf8d4c508a92f44ee76f4ed7 /log | |
| parent | c2098010806855ad7072b5911272f76d960fe595 (diff) | |
| download | soikk-libs-de4a44205f754ed928149303be4ffd419834f492.tar.xz soikk-libs-de4a44205f754ed928149303be4ffd419834f492.tar.zst | |
Added more remove fps functions, other QOL changes
Diffstat (limited to 'log')
| -rwxr-xr-x | log/log.c | 48 | ||||
| -rwxr-xr-x | log/log.h | 5 |
2 files changed, 42 insertions, 11 deletions
@@ -55,9 +55,15 @@ int log_set_stderr(int level, int of){ return 0; } -void log_set_level(int level, int of){ +int log_get_level(int level){ if(level >= 0 && level < LOG_LEVEL_COUNT){ - log_levels[level].set = of; + return log_levels[level].set; + } +} + +int log_set_level(int level, int of){ + if(level >= 0 && level < LOG_LEVEL_COUNT){ + return log_levels[level].set = of; } } @@ -77,19 +83,41 @@ FILE *log_get_fp(int level, int i){ } int log_remove_fp(int level, FILE *fp){ + if(level >= 0 && level < LOG_LEVEL_COUNT){ + for(int i = 0; i < log_levels[level].nfps; i++){ + if(log_levels[level].fps[i] == fp){ + for(int j = i; j < MAX_LOGFILES-1; j++){ + log_levels[level].fps[j] = log_levels[level].fps[j+1]; + } + log_levels[level].fps[log_levels[level].nfps--] = NULL; + return 0; + } + } + } + return 1; +} + +int log_remove_fp_i(int level, int i){ + if(level < 0 || level >= LOG_LEVEL_COUNT || i < 0 || i >= log_levels[level].nfps){ + return 1; + } + int j = i; + for(; j < log_levels[level].nfps-1; j++){ + log_levels[level].fps[j] = log_levels[level].fps[j+1]; + } + log_levels[level].fps[j] = NULL; + return 0; +} + +int log_remove_fps(int level){ if(level < 0 || level >= LOG_LEVEL_COUNT){ return 1; } for(int i = 0; i < log_levels[level].nfps; i++){ - if(log_levels[level].fps[i] == fp){ - for(int j = i; j < MAX_LOGFILES-1; j++){ - log_levels[level].fps[j] = log_levels[level].fps[j+1]; - } - log_levels[level].fps[log_levels[level].nfps--] = NULL; - return 0; - } + log_levels[level].fps[i] = NULL; } - return 1; + log_levels[level].nfps = 0; + return 0; } int log_get_files(int level){ @@ -28,10 +28,13 @@ enum { int log_get_stderr(int level); int log_set_stderr(int level, int of); -void log_set_level(int level, int of); +int log_get_level(int level); +int log_set_level(int level, int of); int log_add_fp(int level, FILE *fp); FILE *log_get_fp(int level, int i); int log_remove_fp(int level, FILE *fp); +int log_remove_fp_i(int level, int i); +int log_remove_fps(int level); int log_get_files(int level); void log_time_format(char *tf); int log_nanoseconds(int n); |
