diff --git a/src/rust/api/cmn.rs b/src/rust/api/cmn.rs index 906dbf900f..b157cda577 100644 --- a/src/rust/api/cmn.rs +++ b/src/rust/api/cmn.rs @@ -746,6 +746,17 @@ pub fn remove_json_null_values(value: &mut json::value::Value) { map.remove(key); } } + json::value::Value::Array(ref mut arr) => { + let mut i = 0; + while i < arr.len() { + if arr[i].is_null() { + arr.remove(i); + } else { + remove_json_null_values(&mut arr[i]); + i += 1; + } + } + } _ => {} } } diff --git a/src/rust/cli/cmn.rs b/src/rust/cli/cmn.rs index d1c46e6375..3f4407a5db 100644 --- a/src/rust/cli/cmn.rs +++ b/src/rust/cli/cmn.rs @@ -65,6 +65,17 @@ pub fn remove_json_null_values(value: &mut Value) { map.remove(key); } } + json::value::Value::Array(ref mut arr) => { + let mut i = 0; + while i < arr.len() { + if arr[i].is_null() { + arr.remove(i); + } else { + remove_json_null_values(&mut arr[i]); + i += 1; + } + } + } _ => {} } }