From 6fcc413c96d99ecbf405021d36292f0bc646fecb Mon Sep 17 00:00:00 2001 From: peter Date: Thu, 20 Aug 2026 16:33:48 +0000 Subject: Test the aplwc_errstr and aplwc_errstr_rc functions FossilOrigin-Name: c72c226a392ac25e688b131070bdfb2902b2a697766ecdfc0865b356cd3c2b2a --- src/libmain.c | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) (limited to 'src/libmain.c') diff --git a/src/libmain.c b/src/libmain.c index 5dce8a0..b96d0da 100644 --- a/src/libmain.c +++ b/src/libmain.c @@ -24,6 +24,19 @@ aplwc_destroy(struct aplwc *p) return APLWC_OK; } +const char * +aplwc_errstr_rc(enum aplwc_rc rc) +{ + switch(rc){ + case APLWC_OK: + return ""; + case APLWC_OUT_OF_MEMORY: + return "Out of memory"; + default: + return "(unable to produce error string)"; + } +} + const char * aplwc_errstr(struct aplwc *aplwc) { @@ -31,6 +44,7 @@ aplwc_errstr(struct aplwc *aplwc) static char buf[BUF_SIZE]; const char *err, *msg; + enum aplwc_rc rc; char *p; size_t len, i; @@ -39,12 +53,13 @@ aplwc_errstr(struct aplwc *aplwc) err = msg = NULL; if(aplwc){ - err = rc_to_string(aplwc->last_error); msg = aplwc->last_error_msg; + rc = aplwc->last_error; + }else{ + rc = APLWC_RC_LAST+1; } - if(!err) - err = "(unable to produce error string)"; + err = aplwc_errstr_rc(rc); for(i = 0, len = strlen(err); (i <= len) && (((p+i)-buf) < (BUF_SIZE-1)); i++) p[i] = err[i]; -- cgit v1.2.3