summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGraham Leggett <minfrin@apache.org>2018-08-02 16:54:54 +0000
committerGraham Leggett <minfrin@apache.org>2018-08-02 16:54:54 +0000
commit576f576b525477d154ee8369a60d7de2e31b0c71 (patch)
treeadf2c4e63337dce85035ecc0f0e9d7ea9a12e8a0
parentb3d946e825badac0a411fb5a5c92b6e30fd410a7 (diff)
downloadapr-576f576b525477d154ee8369a60d7de2e31b0c71.tar.gz
Pass the apr_json_value_t into the apr_json_object_get() function to
be consistent with the rest of the API. git-svn-id: https://svn.apache.org/repos/asf/apr/apr/trunk@1837327 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--include/apr_json.h2
-rw-r--r--json/apr_json.c8
2 files changed, 7 insertions, 3 deletions
diff --git a/include/apr_json.h b/include/apr_json.h
index 6850feccd..ea87a2793 100644
--- a/include/apr_json.h
+++ b/include/apr_json.h
@@ -265,7 +265,7 @@ APR_DECLARE(apr_status_t) apr_json_object_set(apr_json_value_t *obj,
* @return Returns NULL if the key is not present.
*/
APR_DECLARE(apr_json_kv_t *)
- apr_json_object_get(apr_json_object_t *obj, const char *key)
+ apr_json_object_get(apr_json_value_t *obj, const char *key)
__attribute__((nonnull(1, 2)));
/**
diff --git a/json/apr_json.c b/json/apr_json.c
index c7a6efee2..b035c435f 100644
--- a/json/apr_json.c
+++ b/json/apr_json.c
@@ -159,7 +159,11 @@ apr_status_t apr_json_object_set(apr_json_value_t *object, apr_json_value_t *key
return APR_SUCCESS;
}
-apr_json_kv_t *apr_json_object_get(apr_json_object_t *object, const char *key)
+apr_json_kv_t *apr_json_object_get(apr_json_value_t *object, const char *key)
{
- return apr_hash_get(object->hash, key, APR_HASH_KEY_STRING);
+ if (object->type != APR_JSON_OBJECT) {
+ return NULL;
+ }
+
+ return apr_hash_get(object->value.object->hash, key, APR_HASH_KEY_STRING);
}