liblash

Basic tools written and used by lash in c programming.
Log | Files | Refs

commit 804698c61d14ae727beb1500204c363337a746db
parent 515a6a858beec8487f4dc29d43f5b983cf83a435
Author: lash <dev@holbrook.no>
Date:   Wed, 12 Jun 2024 17:16:46 +0100

rerr: Assign core prefix at init

Diffstat:
Msrc/rerr/rerr.c | 8++++----
Msrc/rerr/rerr.h | 4++--
Msrc/rerr/test.c | 11++++++++---
3 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/src/rerr/rerr.c b/src/rerr/rerr.c @@ -2,7 +2,7 @@ #ifdef RERR static char** rerr[RERR_N_PFX + 1]; -static char* rerr_pfx[RERR_N_PFX + 1]; +static const char* rerr_pfx[RERR_N_PFX + 1]; char *rerr_base[3] = { "OK", "FAIL", @@ -10,7 +10,7 @@ char *rerr_base[3] = { }; #endif -void rerr_init() { +void rerr_init(const char *coreprefix) { #ifdef RERR int i; @@ -19,7 +19,7 @@ void rerr_init() { rerr_pfx[i] = 0x0; } rerr[0] = rerr_base; - rerr_pfx[0] = 0x0; + rerr_pfx[0] = coreprefix; #endif } @@ -45,7 +45,7 @@ static char *strv(short k, char v) { } #endif -char *rerrpfx(int code) { +const char *rerrpfx(int code) { #ifdef RERR short k; char v; diff --git a/src/rerr/rerr.h b/src/rerr/rerr.h @@ -9,10 +9,10 @@ #define RERR_N_PFX 0 #endif -void rerr_init(); +void rerr_init(const char *coreprefix); void rerr_register(int pfx, char *label, void *start); char* rerrstr(int code, char *buf); char* rerrstrv(int code); -char* rerrpfx(int code); +const char* rerrpfx(int code); #endif // RERR_H diff --git a/src/rerr/test.c b/src/rerr/test.c @@ -9,12 +9,17 @@ char *bars[3] = { }; int main() { - char *s; + const char *s; char v[1024]; - rerr_init(); + rerr_init("core"); + + s = rerrpfx(0); + if (strcmp(s, "core")) { + return 1; + } s = rerrstr(0, v); - if (strcmp(s, "OK")) { + if (strcmp(s, "core: OK")) { return 1; }