Skip to content

Commit 0a6a03b

Browse files
bazsiMrAnno
authored andcommitted
filterx/object-string: make sure FILTERX_STRING_STACK_INIT() works correctly even in str_len is unsigned
Some call sites have an unsigned variable passed here, which can still become -1. So make sure we handle that one correctly as well. Signed-off-by: Balazs Scheidler <balazs.scheidler@axoflow.com> Signed-off-by: László Várady <laszlo.varady@anno.io>
1 parent 35e30d7 commit 0a6a03b

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

lib/filterx/object-string.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ _string_clone(FilterXObject *s)
132132
static inline FilterXString *
133133
_string_new(const gchar *str, gssize str_len, FilterXStringTranslateFunc translate)
134134
{
135-
if (str_len < 0)
135+
if (str_len == -1)
136136
str_len = strlen(str);
137137

138138
FilterXString *self = g_malloc(sizeof(FilterXString) + str_len + 1);

lib/filterx/object-string.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ void filterx_string_global_deinit(void);
9595
{ \
9696
FILTERX_OBJECT_STACK_INIT(string), \
9797
.str = (cstr), \
98-
.str_len = ((cstr_len) < 0 ? strlen(cstr) : (cstr_len)), \
98+
.str_len = (((gssize) cstr_len) == -1 ? strlen(cstr) : (cstr_len)), \
9999
}
100100

101101
#define FILTERX_STRING_DECLARE_ON_STACK(_name, cstr, cstr_len) \

0 commit comments

Comments
 (0)