From acc2bdb875dee753fc17d8a23c960d17ef80bfbd Mon Sep 17 00:00:00 2001 From: Gunnar Beutner Date: Tue, 2 Jul 2013 10:06:08 +0200 Subject: [PATCH] Use object name if HOSTADDRESS macro isn't defined. --- lib/icinga/host.cpp | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) 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; -- 2.40.0