Skip to content

Fix abnormal termination caused by use of an invalid context when AlgExecStateSvc is verbose

The crash is caused by !248 (merged), namely, by the wrong assumption used in AlgExecStateSvc::dump(..) that an event context is always valid. And in AlgExecStateSvc::init() it never is.

The undefined behavior, occurring if AlgExecStateSvc is put to VERBOSE, makes Gaudi crash throwing an std::out_of_range upon the use of an uninitialized slot ID.

Not sure how much useful the dump in AlgExecStateSvc::init() is.. But, in case it is, I preferred checking the context validity to removing the entire dump, thus resurrecting the behavior we had before the above mentioned MR.

Edited by Illya Shapoval

Merge request reports

Loading