From f62fe221f0b71520a1d77a49ee68633228953aca Mon Sep 17 00:00:00 2001 From: Dietmar Maurer Date: Fri, 31 Jan 2020 09:00:51 +0100 Subject: [PATCH] src/api/schema.rs - verify_json_object: improve error message --- proxmox/src/api/schema.rs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/proxmox/src/api/schema.rs b/proxmox/src/api/schema.rs index 35e16d39..df681534 100644 --- a/proxmox/src/api/schema.rs +++ b/proxmox/src/api/schema.rs @@ -871,15 +871,18 @@ pub fn verify_json_object(data: &Value, schema: &ObjectSchema) -> Result<(), Err for (key, value) in map { if let Some((_optional, prop_schema)) = schema.lookup(&key) { - match prop_schema { + let result = match prop_schema { Schema::Object(object_schema) => { - verify_json_object(value, object_schema)?; + verify_json_object(value, object_schema) } Schema::Array(array_schema) => { - verify_json_array(value, array_schema)?; + verify_json_array(value, array_schema) } - _ => verify_json(value, prop_schema)?, - } + _ => verify_json(value, prop_schema), + }; + if let Err(err) = result { + bail!("property '{}': {}", key, err); + }; } else if !additional_properties { bail!( "property '{}': schema does not allow additional properties.",