[PATCH v2 1/2] uintset: NULL-check before use
by Tim Kourt
Postpone the variable usage until after the set is NULL-checked.
---
ell/uintset.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/ell/uintset.c b/ell/uintset.c
index 2b95ac2..1d96e68 100644
--- a/ell/uintset.c
+++ b/ell/uintset.c
@@ -202,11 +202,13 @@ LIB_EXPORT void l_uintset_free(struct l_uintset *set)
**/
LIB_EXPORT bool l_uintset_take(struct l_uintset *set, uint32_t number)
{
- uint32_t offset = (number - set->min) / BITS_PER_LONG;
+ uint32_t offset;
if (unlikely(!set))
return false;
+ offset = (number - set->min) / BITS_PER_LONG;
+
number -= set->min;
if (number > set->size)
@@ -233,12 +235,13 @@ LIB_EXPORT bool l_uintset_take(struct l_uintset *set, uint32_t number)
**/
LIB_EXPORT bool l_uintset_put(struct l_uintset *set, uint32_t number)
{
- uint32_t bit = number - set->min;
+ uint32_t bit;
uint32_t offset;
if (unlikely(!set))
return false;
+ bit = number - set->min;
if (bit >= set->size)
return false;
@@ -257,12 +260,13 @@ LIB_EXPORT bool l_uintset_put(struct l_uintset *set, uint32_t number)
**/
LIB_EXPORT bool l_uintset_contains(struct l_uintset *set, uint32_t number)
{
- uint32_t bit = number - set->min;
+ uint32_t bit;
uint32_t offset;
if (unlikely(!set))
return false;
+ bit = number - set->min;
if (bit >= set->size)
return false;
--
2.13.6
1 year, 12 months
[PATCH 1/2] uintset: NULL-check before use
by Tim Kourt
Postpone the variable usage until after the set is NULL-checked.
---
ell/uintset.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/ell/uintset.c b/ell/uintset.c
index 2b95ac2..1d96e68 100644
--- a/ell/uintset.c
+++ b/ell/uintset.c
@@ -202,11 +202,13 @@ LIB_EXPORT void l_uintset_free(struct l_uintset *set)
**/
LIB_EXPORT bool l_uintset_take(struct l_uintset *set, uint32_t number)
{
- uint32_t offset = (number - set->min) / BITS_PER_LONG;
+ uint32_t offset;
if (unlikely(!set))
return false;
+ offset = (number - set->min) / BITS_PER_LONG;
+
number -= set->min;
if (number > set->size)
@@ -233,12 +235,13 @@ LIB_EXPORT bool l_uintset_take(struct l_uintset *set, uint32_t number)
**/
LIB_EXPORT bool l_uintset_put(struct l_uintset *set, uint32_t number)
{
- uint32_t bit = number - set->min;
+ uint32_t bit;
uint32_t offset;
if (unlikely(!set))
return false;
+ bit = number - set->min;
if (bit >= set->size)
return false;
@@ -257,12 +260,13 @@ LIB_EXPORT bool l_uintset_put(struct l_uintset *set, uint32_t number)
**/
LIB_EXPORT bool l_uintset_contains(struct l_uintset *set, uint32_t number)
{
- uint32_t bit = number - set->min;
+ uint32_t bit;
uint32_t offset;
if (unlikely(!set))
return false;
+ bit = number - set->min;
if (bit >= set->size)
return false;
--
2.13.6
1 year, 12 months