InputTag string parsing breaks for empty instance name
InputTag.h promises to parse strings in the form "label:instance:process".
That indeed works for input strings like "g4run:aaa:MyProcess".
However data products with an empty instance name are not treated properly.
A string "g4run::MyProcess" gives InputTag with instance=MyProcess instead
of the requested emtpy instance name.
#1 Updated by Christopher Green about 6 years ago
- Category set to Infrastructure
- Target version set to 401
- Estimated time set to 4.00 h
- Experiment Mu2e added
- Experiment deleted (
Behavior verified and localized to behavior of general utility function
cet::split. Unfortunately, a survey of use of
cet::split() elsewhere indicates that the behavior here found to be undesirable is actually required other places it is used. This means that the undesirable behavior should be addressed in
art::InputTag, probably by using some other method than
cet::split(). Otherwise, one could envisage an overload of
cet::split() taking a dummy extra argument (say,
cet::empty_fields) with the desired behavior.