diff options
author | Joseph Hunkeler <jhunkeler@users.noreply.github.com> | 2020-04-20 01:56:17 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-20 01:56:17 -0400 |
commit | 110489259c0696c0cee5bec6ad7695a0c93d4e74 (patch) | |
tree | 34a82b9e686c15e2acb00d62a0f8b95ac126de6d /lib/error_handler.c | |
parent | 57c9489b28a481abc078ad3a2dd197079f9c414b (diff) | |
parent | 667574b2e5628976c0cc0ddc2e1ae25bf5c0fd02 (diff) | |
download | spmc-110489259c0696c0cee5bec6ad7695a0c93d4e74.tar.gz |
Merge pull request #28 from jhunkeler/circleci-macos
Circleci macos
Diffstat (limited to 'lib/error_handler.c')
-rw-r--r-- | lib/error_handler.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/error_handler.c b/lib/error_handler.c index baf56b4..4e06919 100644 --- a/lib/error_handler.c +++ b/lib/error_handler.c @@ -2,7 +2,25 @@ int spmerrno = 0; static char spmerrbuf[255]; +static char spmerrbuf_reason[255]; +const char *SPM_ERR_STRING[] = { + "Success", + "No root record", + "Dangerous root path", + "Package not found", + "Invalid package", + "Bad package checksum", + "Failed to fetch package", + "Manifest has no header", + "Manifest has no data", + NULL, +}; +void spmerrno_cause(const char *reason) { + char *buf = spmerrbuf_reason; + sprintf(buf, " (%s)", reason); + return; +} /** * * @param code @@ -18,6 +36,10 @@ char *spm_strerror(int code) { } else { strcpy(buf, SPM_ERR_STRING[SPM_ERR_INDEX(code)]); } + + if (strlen(spmerrbuf_reason)) { + strcat(buf, spmerrbuf_reason); + } return buf; } |