X-Git-Url: https://git.nihav.org/?p=nihav.git;a=blobdiff_plain;f=nihav-indeo%2Fsrc%2Fcodecs%2Fivibr.rs;fp=nihav-indeo%2Fsrc%2Fcodecs%2Fivibr.rs;h=1383f7409dec3f1b72f88fbcc41b5bd13fbe7072;hp=d544085f350fa54d68cb950a1ba9b438a700a225;hb=e6aaad5c5273cd814b5748b7faf3751835a37217;hpb=625751036014b099fd9c126397bc973cb0543130 diff --git a/nihav-indeo/src/codecs/ivibr.rs b/nihav-indeo/src/codecs/ivibr.rs index d544085..1383f74 100644 --- a/nihav-indeo/src/codecs/ivibr.rs +++ b/nihav-indeo/src/codecs/ivibr.rs @@ -836,7 +836,7 @@ br.skip(skip_part as u32)?; unreachable!(); } - fn decode_single_frame<'a>(&mut self, dec: &mut dyn IndeoXParser, br: &mut BitReader<'a>) -> DecoderResult { + fn decode_single_frame(&mut self, dec: &mut dyn IndeoXParser, br: &mut BitReader) -> DecoderResult { let pic_hdr = dec.decode_picture_header(br)?; self.ftype = pic_hdr.ftype; if pic_hdr.ftype.is_null() { @@ -978,9 +978,8 @@ br.skip(skip_part as u32)?; Ok(buftype) } - pub fn decode_frame<'a>(&mut self, dec: &mut dyn IndeoXParser, br: &mut BitReader<'a>) -> DecoderResult { - let res = self.decode_single_frame(dec, br); - if res.is_err() { return res; } + pub fn decode_frame(&mut self, dec: &mut dyn IndeoXParser, br: &mut BitReader) -> DecoderResult { + let res = self.decode_single_frame(dec, br)?; if (self.ftype == IVIFrameType::Intra) && (br.left() > 16) { loop { if br.left() < 8 { break; } @@ -1003,11 +1002,11 @@ br.skip(skip_part as u32)?; } } if self.bref.is_some() && self.ftype == IVIFrameType::Inter { - let mut bref: Option = Some(res.unwrap()); + let mut bref: Option = Some(res); mem::swap(&mut bref, &mut self.bref); return Ok(bref.unwrap()); } - if let Ok(NABufferType::None) = res { + if let NABufferType::None = res { if self.bref.is_some() { let mut bref: Option = None; mem::swap(&mut bref, &mut self.bref); @@ -1015,7 +1014,7 @@ br.skip(skip_part as u32)?; return Ok(bref.unwrap()); } } - res + Ok(res) } pub fn flush(&mut self) {