|
|
@ -1891,6 +1891,14 @@ CJSON_PUBLIC(void) cJSON_AddItemToObject(cJSON *object, const char *string, cJSO |
|
|
|
#ifdef __GNUC__ |
|
|
|
#pragma GCC diagnostic ignored "-Wcast-qual" |
|
|
|
#endif |
|
|
|
/* helper function to cast away const */ |
|
|
|
static char* cast_away_const_from_string(const char* string) |
|
|
|
{ |
|
|
|
return (char*)string; |
|
|
|
} |
|
|
|
#if defined(__clang__) || (defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 5)))) |
|
|
|
#pragma GCC diagnostic pop |
|
|
|
#endif |
|
|
|
|
|
|
|
/* Add an item to an object with constant string as key */ |
|
|
|
CJSON_PUBLIC(void) cJSON_AddItemToObjectCS(cJSON *object, const char *string, cJSON *item) |
|
|
@ -1903,13 +1911,10 @@ CJSON_PUBLIC(void) cJSON_AddItemToObjectCS(cJSON *object, const char *string, cJ |
|
|
|
{ |
|
|
|
global_hooks.deallocate(item->string); |
|
|
|
} |
|
|
|
item->string = (char*)string; |
|
|
|
item->string = cast_away_const_from_string(string); |
|
|
|
item->type |= cJSON_StringIsConst; |
|
|
|
cJSON_AddItemToArray(object, item); |
|
|
|
} |
|
|
|
#if defined(__clang__) || (defined(__GNUC__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 5)))) |
|
|
|
#pragma GCC diagnostic pop |
|
|
|
#endif |
|
|
|
|
|
|
|
CJSON_PUBLIC(void) cJSON_AddItemReferenceToArray(cJSON *array, cJSON *item) |
|
|
|
{ |
|
|
|