diff --git a/lib/dtsc.cpp b/lib/dtsc.cpp index 9c212d9b..61974c7d 100644 --- a/lib/dtsc.cpp +++ b/lib/dtsc.cpp @@ -1012,12 +1012,10 @@ bool DTSC::File::atKeyframe(){ return true; } long long int bTime = jsonbuffer["time"].asInt(); - for (std::set<int>::iterator selectIt = selectedTracks.begin(); selectIt != selectedTracks.end(); selectIt++){ - JSON::Value & keys = getTrackById((*selectIt))["keys"]; - for (JSON::ArrIter aIt = keys.ArrBegin(); aIt != keys.ArrEnd(); aIt++){ - if ((*aIt)["time"].asInt() == bTime){ - return true; - } + JSON::Value & keys = getTrackById(jsonbuffer["trackid"].asInt())["keys"]; + for (JSON::ArrIter aIt = keys.ArrBegin(); aIt != keys.ArrEnd(); ++aIt){ + if ((*aIt)["time"].asInt() >= bTime){ + return ((*aIt)["time"].asInt() == bTime); } } return false;