mirror of https://github.com/Icinga/icinga2.git
Fix unregistered function failure including <nscp> on Linux
fixes #9394
This commit is contained in:
parent
2f27edbaae
commit
9ada3dd5be
|
@ -57,9 +57,7 @@ REGISTER_SCRIPTFUNCTION(bool, &ScriptUtils::CastBool);
|
|||
REGISTER_SCRIPTFUNCTION(get_time, &Utility::GetTime);
|
||||
REGISTER_SCRIPTFUNCTION(basename, &Utility::BaseName);
|
||||
REGISTER_SCRIPTFUNCTION(dirname, &Utility::DirName);
|
||||
#ifdef _WIN32
|
||||
REGISTER_SCRIPTFUNCTION(msi_get_component_path, &ScriptUtils::MsiGetComponentPathShim);
|
||||
#endif /* _WIN32 */
|
||||
|
||||
String ScriptUtils::CastString(const Value& value)
|
||||
{
|
||||
|
@ -286,9 +284,9 @@ void ScriptUtils::Assert(const Value& arg)
|
|||
BOOST_THROW_EXCEPTION(std::runtime_error("Assertion failed"));
|
||||
}
|
||||
|
||||
#ifdef _WIN32
|
||||
String ScriptUtils::MsiGetComponentPathShim(const String& component)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
TCHAR productCode[39];
|
||||
if (MsiGetProductCode(component.CStr(), productCode) != ERROR_SUCCESS)
|
||||
return "";
|
||||
|
@ -297,5 +295,7 @@ String ScriptUtils::MsiGetComponentPathShim(const String& component)
|
|||
path[0] = '\0';
|
||||
MsiGetComponentPath(productCode, component.CStr(), path, &szPath);
|
||||
return path;
|
||||
}
|
||||
#else /* _WIN32 */
|
||||
return String();
|
||||
#endif /* _WIN32 */
|
||||
}
|
||||
|
|
|
@ -50,9 +50,7 @@ public:
|
|||
static DynamicObject::Ptr GetObject(const Type::Ptr& type, const String& name);
|
||||
static Array::Ptr GetObjects(const Type::Ptr& type);
|
||||
static void Assert(const Value& arg);
|
||||
#ifdef _WIN32
|
||||
static String MsiGetComponentPathShim(const String& component);
|
||||
#endif /* _WIN32 */
|
||||
|
||||
private:
|
||||
ScriptUtils(void);
|
||||
|
|
Loading…
Reference in New Issue