diff options
-rw-r--r-- | crypto/params.c | 4 | ||||
-rw-r--r-- | test/evp_extra_test2.c | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/crypto/params.c b/crypto/params.c index 50e900a..d974363 100644 --- a/crypto/params.c +++ b/crypto/params.c @@ -1128,11 +1128,13 @@ int OSSL_PARAM_get_utf8_string(const OSSL_PARAM *p, char **val, size_t max_len) */ size_t data_length = p->data_size; + if (ret == 0) + return 0; if (data_length >= max_len) data_length = OPENSSL_strnlen(p->data, data_length); if (data_length >= max_len) return 0; /* No space for a terminating NUL byte */ - ((char *)*val)[data_length] = '\0'; + (*val)[data_length] = '\0'; return ret; } diff --git a/test/evp_extra_test2.c b/test/evp_extra_test2.c index 358ac60..6d5303a 100644 --- a/test/evp_extra_test2.c +++ b/test/evp_extra_test2.c @@ -566,7 +566,7 @@ static int do_check_utf8_str(OSSL_PARAM params[], const char *key, const char *expected) { OSSL_PARAM *p; - char *bufp = 0; + char *bufp = NULL; int ret; ret = TEST_ptr(p = OSSL_PARAM_locate(params, key)) |