diff --git a/source/librii/kmp/CourseMap.cpp b/source/librii/kmp/CourseMap.cpp index 4a227c33a..6190f29e3 100644 --- a/source/librii/kmp/CourseMap.cpp +++ b/source/librii/kmp/CourseMap.cpp @@ -40,7 +40,13 @@ Result IdToStr(int id) { } Result StrToId(std::string_view name) { for (int i = 0; i < Flow.remap_table.size(); ++i) { - if (Flow.parameters[Flow.remap_table[i]].Name == name) { + const int indirect = Flow.remap_table[i]; + + if (indirect < 0 || indirect >= Flow.parameters.size()) { + continue; + } + + if (Flow.parameters[indirect].Name == name) { return i; } }