From 3a108f751cd522fb30f348ff8968caeef7f6f9b8 Mon Sep 17 00:00:00 2001 From: Eric Lambert Date: Fri, 26 Sep 2014 19:13:37 -0700 Subject: liberasurecode_backend_lookup_id now returns EC_BACKENDS_MAX, as opposed to -1, when it can not locate the specified backend (-1 was a non-sensical return value since the function signature called for a type of ec_backend_id_t). NOTE: with this change we now successfully build and tests pass on OS X with clang. --- src/erasurecode.c | 6 +++--- test/liberasurecode_test.c | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/erasurecode.c b/src/erasurecode.c index b376568..0d7e563 100644 --- a/src/erasurecode.c +++ b/src/erasurecode.c @@ -81,7 +81,7 @@ ec_backend_t liberasurecode_backend_lookup_by_name(const char *name) ec_backend_id_t liberasurecode_backend_lookup_id(const char *name) { if (NULL == name) - return -1; + return EC_BACKENDS_MAX; int b = 0; for (b = 0; ec_backends_supported[b]; ++b) { @@ -90,7 +90,7 @@ ec_backend_id_t liberasurecode_backend_lookup_id(const char *name) return backend->common.id; } - return -1; + return EC_BACKENDS_MAX; } /* =~=*=~==~=*=~==~=*=~= EC backend instance management =~=*=~==~=*=~==~=*= */ @@ -313,7 +313,7 @@ int liberasurecode_instance_create(const char *backend_name, return -1; ec_backend_id_t id = liberasurecode_backend_lookup_id(backend_name); - if (-1 == id) + if (EC_BACKENDS_MAX == id) return -EBACKENDNOTSUPP; /* Allocate memory for ec_backend instance */ diff --git a/test/liberasurecode_test.c b/test/liberasurecode_test.c index 6b6bfd4..e81c111 100644 --- a/test/liberasurecode_test.c +++ b/test/liberasurecode_test.c @@ -907,10 +907,10 @@ static void test_backend_lookup_by_id() int i =0, num_backends; const char **supported_ec_backends = liberasurecode_supported_backends(&num_backends); - assert(liberasurecode_backend_lookup_id(null_name) == -1); - assert(liberasurecode_backend_lookup_id(empty_name) == -1); - assert(liberasurecode_backend_lookup_id(white_space_name) == -1); - assert(liberasurecode_backend_lookup_id(missing_name) == -1); + assert(liberasurecode_backend_lookup_id(null_name) == EC_BACKENDS_MAX); + assert(liberasurecode_backend_lookup_id(empty_name) == EC_BACKENDS_MAX); + assert(liberasurecode_backend_lookup_id(white_space_name) == EC_BACKENDS_MAX); + assert(liberasurecode_backend_lookup_id(missing_name) == EC_BACKENDS_MAX); for (i = 0; i < num_backends; i++) { assert(liberasurecode_backend_lookup_id(supported_ec_backends[i]) == i); } -- cgit v1.2.1