diff --git a/cJSON.c b/cJSON.c index f6dd11c..fb8f756 100644 --- a/cJSON.c +++ b/cJSON.c @@ -405,10 +405,13 @@ CJSON_PUBLIC(char*) cJSON_SetValuestring(cJSON *object, const char *valuestring) { return NULL; } - if (strlen(valuestring) <= strlen(object->valuestring)) + if (object->valuestring != NULL) { - strcpy(object->valuestring, valuestring); - return object->valuestring; + if (strlen(valuestring) <= strlen(object->valuestring)) + { + strcpy(object->valuestring, valuestring); + return object->valuestring; + } } copy = (char*) cJSON_strdup((const unsigned char*)valuestring, &global_hooks); if (copy == NULL)