From 3bf2913634979c93527ef84427d0e2e546d12e57 Mon Sep 17 00:00:00 2001 From: Max Bruckner Date: Sun, 30 Apr 2017 19:59:05 +0200 Subject: [PATCH] Add cJSONUtils_GeneratePatchesCaseSensitive --- cJSON_Utils.c | 8 ++++++++ cJSON_Utils.h | 1 + 2 files changed, 9 insertions(+) diff --git a/cJSON_Utils.c b/cJSON_Utils.c index b4dacf3..22794df 100644 --- a/cJSON_Utils.c +++ b/cJSON_Utils.c @@ -1059,6 +1059,14 @@ CJSON_PUBLIC(cJSON *) cJSONUtils_GeneratePatches(cJSON * const from, cJSON * con return patches; } +CJSON_PUBLIC(cJSON *) cJSONUtils_GeneratePatchesCaseSensitive(cJSON * const from, cJSON * const to) +{ + cJSON *patches = cJSON_CreateArray(); + create_patches(patches, (const unsigned char*)"", from, to, true); + + return patches; +} + /* sort lists using mergesort */ static cJSON *sort_list(cJSON *list, const cJSON_bool case_sensitive) { diff --git a/cJSON_Utils.h b/cJSON_Utils.h index 4ff21f8..e61bb61 100644 --- a/cJSON_Utils.h +++ b/cJSON_Utils.h @@ -29,6 +29,7 @@ CJSON_PUBLIC(cJSON *) cJSONUtils_GetPointerCaseSensitive(cJSON * const object, c /* Implement RFC6902 (https://tools.ietf.org/html/rfc6902) JSON Patch spec. */ /* NOTE: This modifies objects in 'from' and 'to' by sorting the elements by their key */ CJSON_PUBLIC(cJSON *) cJSONUtils_GeneratePatches(cJSON * const from, cJSON * const to); +CJSON_PUBLIC(cJSON *) cJSONUtils_GeneratePatchesCaseSensitive(cJSON * const from, cJSON * const to); /* Utility for generating patch array entries. */ CJSON_PUBLIC(void) cJSONUtils_AddPatchToArray(cJSON * const array, const char * const operation, const char * const path, const cJSON * const value); /* Returns 0 for success. */