From: Michael Friedrich Date: Thu, 11 Oct 2018 10:42:56 +0000 (+0200) Subject: Don't throw an error when namespace indexers don't find a valid key X-Git-Tag: v2.10.0~1^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=refs%2Fpull%2F6669%2Fhead;p=icinga2 Don't throw an error when namespace indexers don't find a valid key Examples: ``` globals["abc"] globals.def ``` The patch for the Icinga Director unfortunately only solves the master, and as discussed with @lippserd we need to ensure that satellites and clients with 2.10 can be restarted without any errors from deployed configuration. refs #6509 refs icinga/icingaweb2-module-director#1654 --- diff --git a/lib/base/namespace.cpp b/lib/base/namespace.cpp index d106a0ee3..909a76511 100644 --- a/lib/base/namespace.cpp +++ b/lib/base/namespace.cpp @@ -108,7 +108,7 @@ Value Namespace::GetFieldByName(const String& field, bool, const DebugInfo& debu if (nsVal) return nsVal->Get(debugInfo); else - return GetPrototypeField(const_cast(this), field, true, debugInfo); + return GetPrototypeField(const_cast(this), field, false, debugInfo); /* Ignore indexer not found errors similar to the Dictionary class. */ } void Namespace::SetFieldByName(const String& field, const Value& value, bool overrideFrozen, const DebugInfo& debugInfo)