diff options
| author | Mattias Andrée <maandree@operamail.com> | 2014-12-08 22:39:07 +0100 |
|---|---|---|
| committer | Mattias Andrée <maandree@operamail.com> | 2014-12-08 22:39:07 +0100 |
| commit | 2064b68718ea5f15de76d661ae1f307d67a0cf26 (patch) | |
| tree | 3b8f93932cb4a13ab6001f165de7714ec7e86848 /src/mds-kbdc/string.c | |
| parent | update the texinfo manual for the new use of fail_if (diff) | |
| download | mds-2064b68718ea5f15de76d661ae1f307d67a0cf26.tar.gz mds-2064b68718ea5f15de76d661ae1f307d67a0cf26.tar.bz2 mds-2064b68718ea5f15de76d661ae1f307d67a0cf26.tar.xz | |
with a few exceptions and some remaining files, never return directly on failure, always goto fail by invoking fail_if
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to '')
| -rw-r--r-- | src/mds-kbdc/string.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/mds-kbdc/string.c b/src/mds-kbdc/string.c index 062aed3..6ecf757 100644 --- a/src/mds-kbdc/string.c +++ b/src/mds-kbdc/string.c @@ -56,8 +56,7 @@ char32_t* string_decode(const char* restrict string) length++; /* Allocated UTF-32 string. */ - if (xmalloc(rc, length + 1, char32_t)) - return NULL; + fail_if (xmalloc(rc, length + 1, char32_t)); /* Convert to UTF-32. */ for (i = j = n = 0; string[i]; i++) @@ -81,6 +80,8 @@ char32_t* string_decode(const char* restrict string) /* -1-terminate and return. */ return rc[length] = -1, rc; + fail: + return NULL; } @@ -98,8 +99,7 @@ char* string_encode(const char32_t* restrict string) char* restrict rc; /* Allocated Modified UTF-8 string. */ - if (xmalloc(rc, 7 * n + 1, char)) - return NULL; + fail_if (xmalloc(rc, 7 * n + 1, char)); /* Convert to Modified UTF-8. */ for (i = j = 0; i < n; i++) @@ -127,6 +127,8 @@ char* string_encode(const char32_t* restrict string) /* NUL-terminate and return. */ return rc[j] = '\0', rc; + fail: + return NULL; } @@ -143,9 +145,10 @@ char32_t* string_dup(const char32_t* restrict string) if (string == NULL) return NULL; n = string_length(string) + 1; - if (xmalloc(rc, n, char32_t)) - return NULL; + fail_if (xmalloc(rc, n, char32_t)); memcpy(rc, string, n * sizeof(char32_t)); return rc; + fail: + return NULL; } |
