diff --git a/src/multio/action/encode/GribEncoder.cc b/src/multio/action/encode/GribEncoder.cc index 7eb0cf2de..2d1848cd4 100644 --- a/src/multio/action/encode/GribEncoder.cc +++ b/src/multio/action/encode/GribEncoder.cc @@ -819,7 +819,9 @@ void GribEncoder::setOceanMetadata(message::Metadata& md) { setValue(glossary().paramId, paramInt + 4000); } else { - setValue(glossary().paramId, paramInt + ops_to_code.at(md.get(glossary().operation))); + const auto operation = md.getOpt(glossary().operation); + const auto paramIdIncrement = operation ? ops_to_code.at(*operation) : 0; + setValue(glossary().paramId, paramInt + paramIdIncrement); } const auto& typeOfLevel = md.get(glossary().typeOfLevel);