From: Gunnar Beutner Date: Tue, 2 Jul 2013 08:06:08 +0000 (+0200) Subject: Use object name if HOSTADDRESS macro isn't defined. X-Git-Tag: v0.0.2~5 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=acc2bdb875dee753fc17d8a23c960d17ef80bfbd;p=icinga2 Use object name if HOSTADDRESS macro isn't defined. --- diff --git a/lib/icinga/host.cpp b/lib/icinga/host.cpp index 246fa44aa..2119a72d7 100644 --- a/lib/icinga/host.cpp +++ b/lib/icinga/host.cpp @@ -610,18 +610,21 @@ bool Host::ResolveMacro(const String& macro, const Dictionary::Ptr&, String *res Dictionary::Ptr macros = GetMacros(); - if (macros) { - String name = macro; + String name = macro; - if (name == "HOSTADDRESS") - name = "address"; - else if (macro == "HOSTADDRESS6") - name = "address6"; + if (name == "HOSTADDRESS") + name = "address"; + else if (macro == "HOSTADDRESS6") + name = "address6"; - if (macros->Contains(name)) { - *result = macros->Get(name); - return true; - } + if (macros && macros->Contains(name)) { + *result = macros->Get(name); + return true; + } + + if (macro == "HOSTADDRESS" || macro == "HOSTADDRESS6") { + *result = GetName(); + return true; } return false;