diff --git a/DDCond/src/ConditionsDependencyHandler.cpp b/DDCond/src/ConditionsDependencyHandler.cpp index 8f332da2d57b05e81b45c598859d46db15c3aba7..e210df43bb20f80f4bf06976371b5f6b369467cb 100644 --- a/DDCond/src/ConditionsDependencyHandler.cpp +++ b/DDCond/src/ConditionsDependencyHandler.cpp @@ -280,6 +280,18 @@ void ConditionsDependencyHandler::do_callback(Work* work) { work->state = CREATED; ++num_callback; } + else { + printout(ERROR,"ConditionDependency", + "+++ Callback handler returned invalid condition. Key:%s %c%s%c", + work->context.dependency->target.toString().c_str(), +#if defined(DD4HEP_CONDITIONS_DEBUG) + '[',work->context.dependency->detector.path().c_str(),']' +#else + ' ',"",' ' +#endif + ); + throw std::runtime_error("Invalid derived condition callback"); + } return; } catch(const std::exception& e) {