From daf5914a517ec2c2a9bfaf14829fa9b58610e3c5 Mon Sep 17 00:00:00 2001 From: Robear Selwans Date: Sun, 13 Oct 2024 16:43:04 +0300 Subject: [PATCH] Changed equal_fn to return 'true' on equality Signed-off-by: Robear Selwans --- ev_types.h | 2 +- ev_vec.h | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ev_types.h b/ev_types.h index d2c1016..925b8f0 100644 --- a/ev_types.h +++ b/ev_types.h @@ -52,7 +52,7 @@ typedef struct { #define DEFINE_EQUAL_FUNCTION(T,name) static inline bool EQUAL_FUNCTION(T,name)(T *self, T *other) // NOTE: This shouldn't be used for non-arithmetic types. #define DEFINE_DEFAULT_EQUAL_FUNCTION(T) \ - DEFINE_EQUAL_FUNCTION(T,DEFAULT) { return memcmp(self, other, sizeof(T)); } + DEFINE_EQUAL_FUNCTION(T,DEFAULT) { return memcmp(self, other, sizeof(T)) == 0; } #define DEFINE_TOSTR_FUNCTION(T,name) static inline void TOSTR_FUNCTION(T,name)(T *self, char* out) #define DEFINE_DEFAULT_TOSTR_FUNCTION(T) \ diff --git a/ev_vec.h b/ev_vec.h index 367ec26..affa2b4 100644 --- a/ev_vec.h +++ b/ev_vec.h @@ -426,7 +426,7 @@ ev_vec_find( if(metadata->typeData.equal_fn) { for(u32 i = 0; i < metadata->length; i++) { void *elem = *v + metadata->typeData.size * i; - if(!metadata->typeData.equal_fn(elem, val)) + if(metadata->typeData.equal_fn(elem, val)) { return i; } @@ -435,7 +435,7 @@ ev_vec_find( else { for(u32 i = 0; i < metadata->length; i++) { void *elem = *v + metadata->typeData.size * i; - if(!memcmp(elem, val, metadata->typeData.size)) + if(memcmp(elem, val, metadata->typeData.size) == 0) { return i; }