diff --git a/src/api/internal.rs b/src/api/internal.rs index 153610c457..634920988c 100644 --- a/src/api/internal.rs +++ b/src/api/internal.rs @@ -463,8 +463,10 @@ impl ContextInner { .cloned(); let mut next_limit = gop_input_frameno_start + self.config.max_key_frame_interval; - if !ignore_limit && self.limit.is_some() { - next_limit = next_limit.min(self.limit.unwrap()); + if !ignore_limit { + if let Some(limit) = self.limit { + next_limit = next_limit.min(limit); + } } if next_detected.is_none() { return next_limit; diff --git a/src/context/block_unit.rs b/src/context/block_unit.rs index 410953ad98..aba4cbdf65 100644 --- a/src/context/block_unit.rs +++ b/src/context/block_unit.rs @@ -1286,8 +1286,8 @@ impl ContextWriter<'_> { /* TODO: Find nearest match and assign nearest and near mvs */ - // 7.10.2.11 Sort MV stack according to weight - mv_stack.sort_by(|a, b| b.weight.cmp(&a.weight)); + // 7.10.2.11 Sort MV stack according to weight (descending order) + mv_stack.sort_by_key(|mv| std::cmp::Reverse(mv.weight)); if mv_stack.len() < 2 { // 7.10.2.12 Extra search process