]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
manager.c: Fixed "(null):" header in AMI AsyncAGIEnd event
authorSungtae Kim <pchero21@gmail.com>
Thu, 25 Jan 2018 01:58:22 +0000 (02:58 +0100)
committersungtae kim <pchero21@gmail.com>
Fri, 2 Feb 2018 12:24:58 +0000 (06:24 -0600)
* Changed to create ami_event string only when the given blob is not
json_null().
* Fixed bad expression.

ASTERISK-27621

Change-Id: Ice58c16361f9d9e8648261c9ed5d6c8245fb0d8f

main/manager.c

index 576978c31c3a205b14f4d4e58ecfdad90ee553a3..da860f0af289c706a75d9008d64687d32af76bd8 100644 (file)
@@ -1770,7 +1770,12 @@ void manager_json_to_ast_str(struct ast_json *obj, const char *key,
 {
        struct ast_json_iter *i;
 
-       if (!obj || (!res && !(*res) && (!(*res = ast_str_create(1024))))) {
+       /* If obj or res is not given, just return */
+       if (!obj || !res) {
+               return;
+       }
+
+       if (!*res && !(*res = ast_str_create(1024))) {
                return;
        }
 
@@ -1801,11 +1806,14 @@ void manager_json_to_ast_str(struct ast_json *obj, const char *key,
        }
 }
 
-
 struct ast_str *ast_manager_str_from_json_object(struct ast_json *blob, key_exclusion_cb exclusion_cb)
 {
        struct ast_str *res = ast_str_create(1024);
-       manager_json_to_ast_str(blob, NULL, &res, exclusion_cb);
+
+       if (!ast_json_is_null(blob)) {
+          manager_json_to_ast_str(blob, NULL, &res, exclusion_cb);
+       }
+
        return res;
 }