From 9de34e09b14ccb65dc9f69d14e33417d1c0db69a Mon Sep 17 00:00:00 2001 From: Michael Friedrich Date: Thu, 17 Dec 2015 10:20:41 +0100 Subject: [PATCH] Fix that "repository add" writes invalid "type" attribute fixes #10867 --- lib/cli/repositoryutility.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/cli/repositoryutility.cpp b/lib/cli/repositoryutility.cpp index 3093db8b0..9dba28caa 100644 --- a/lib/cli/repositoryutility.cpp +++ b/lib/cli/repositoryutility.cpp @@ -233,12 +233,15 @@ bool RepositoryUtility::AddObject(const std::vector& object_paths, const if (check_config) { try { ConfigObject::Ptr object = static_pointer_cast(utype->Instantiate()); + /* temporarly set the object type for validation */ attrs->Set("type", utype->GetName()); Deserialize(object, attrs, false, FAConfig); object->SetName(name); RepositoryValidationUtils utils; static_pointer_cast(object)->Validate(FAConfig, utils); + + attrs->Remove("type"); } catch (const ValidationError& ex) { Log(LogCritical, "config", DiagnosticInformation(ex)); return false; -- 2.40.0