mirror of https://github.com/Icinga/icinga2.git
parent
25c490ecb6
commit
bc05389a79
|
@ -113,7 +113,12 @@ bool ConfigObjectUtility::CreateObject(const Type::Ptr& type, const String& full
|
||||||
|
|
||||||
if (!ConfigItem::CommitItems(upq) || !ConfigItem::ActivateItems(upq, false, true)) {
|
if (!ConfigItem::CommitItems(upq) || !ConfigItem::ActivateItems(upq, false, true)) {
|
||||||
if (errors) {
|
if (errors) {
|
||||||
unlink(path.CStr());
|
if (unlink(path.CStr()) < 0) {
|
||||||
|
BOOST_THROW_EXCEPTION(posix_error()
|
||||||
|
<< boost::errinfo_api_function("unlink")
|
||||||
|
<< boost::errinfo_errno(errno)
|
||||||
|
<< boost::errinfo_file_name(path));
|
||||||
|
}
|
||||||
|
|
||||||
BOOST_FOREACH(const boost::exception_ptr& ex, upq.GetExceptions()) {
|
BOOST_FOREACH(const boost::exception_ptr& ex, upq.GetExceptions()) {
|
||||||
errors->Add(DiagnosticInformation(ex));
|
errors->Add(DiagnosticInformation(ex));
|
||||||
|
@ -125,7 +130,12 @@ bool ConfigObjectUtility::CreateObject(const Type::Ptr& type, const String& full
|
||||||
} catch (const std::exception& ex) {
|
} catch (const std::exception& ex) {
|
||||||
delete expr;
|
delete expr;
|
||||||
|
|
||||||
unlink(path.CStr());
|
if (unlink(path.CStr()) < 0) {
|
||||||
|
BOOST_THROW_EXCEPTION(posix_error()
|
||||||
|
<< boost::errinfo_api_function("unlink")
|
||||||
|
<< boost::errinfo_errno(errno)
|
||||||
|
<< boost::errinfo_file_name(path));
|
||||||
|
}
|
||||||
|
|
||||||
if (errors)
|
if (errors)
|
||||||
errors->Add(DiagnosticInformation(ex));
|
errors->Add(DiagnosticInformation(ex));
|
||||||
|
|
Loading…
Reference in New Issue