diff --git a/src/util/FFstrbuf.c b/src/util/FFstrbuf.c index e6f705f52..e5835ee70 100644 --- a/src/util/FFstrbuf.c +++ b/src/util/FFstrbuf.c @@ -556,3 +556,26 @@ void ffStrbufDestroy(FFstrbuf* strbuf) free(strbuf->chars); strbuf->chars = NULL; } + +#ifdef __APPLE__ + +void ffStrbufAppendS(FFstrbuf* strbuf, const char* value) +{ + if(value == NULL) + return; + ffStrbufAppendNS(strbuf, (uint32_t) strlen(value), value); +} + +void ffStrbufSetS(FFstrbuf* strbuf, const char* value) +{ + ffStrbufClear(strbuf); + ffStrbufAppendNS(strbuf, (uint32_t) strlen(value), value); +} + +void ffStrbufInitS(FFstrbuf* strbuf, const char* str) +{ + ffStrbufInitA(strbuf, 0); + ffStrbufAppendS(strbuf, str); +} + +#endif diff --git a/src/util/FFstrbuf.h b/src/util/FFstrbuf.h index 6dff9675f..b6728ab43 100644 --- a/src/util/FFstrbuf.h +++ b/src/util/FFstrbuf.h @@ -107,6 +107,15 @@ FF_C_NODISCARD uint16_t ffStrbufToUInt16(const FFstrbuf* strbuf, uint16_t defaul void ffStrbufDestroy(FFstrbuf* strbuf); +//Github actions on macos fails for whatever reason when inlining, so just don't do it. +#ifdef __APPLE__ + +void ffStrbufAppendS(FFstrbuf* strbuf, const char* value); +void ffStrbufSetS(FFstrbuf* strbuf, const char* value); +void ffStrbufInitS(FFstrbuf* strbuf, const char* str); + +#else + static inline void ffStrbufAppendS(FFstrbuf* strbuf, const char* value) { if(value == NULL) @@ -127,3 +136,5 @@ static inline void ffStrbufInitS(FFstrbuf* strbuf, const char* str) } #endif + +#endif