aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavidKorczynski <david@adalogics.com>2021-03-21 02:45:29 +0000
committerGitHub <noreply@github.com>2021-03-20 19:45:29 -0700
commit9afd3b24a6e3cb7910e32ce1c0bde59213d89b49 (patch)
tree6539fdf29006d76e67cc3ffc13beff0d188d3e4f
parentde52eac2b06b9cf91efd526a43dd910105d0b14f (diff)
downloadoss-fuzz-9afd3b24a6e3cb7910e32ce1c0bde59213d89b49.tar.gz
Updated the image-png fuzzer. (#5457)
-rw-r--r--projects/image-png/buf_independent.rs13
1 files changed, 5 insertions, 8 deletions
diff --git a/projects/image-png/buf_independent.rs b/projects/image-png/buf_independent.rs
index 1d19bf182..f4a1f312c 100644
--- a/projects/image-png/buf_independent.rs
+++ b/projects/image-png/buf_independent.rs
@@ -3,7 +3,6 @@ extern crate libfuzzer_sys;
use libfuzzer_sys::fuzz_target;
extern crate png;
-use std::mem::discriminant;
use std::io::{BufRead, Read, Result};
/// A reader that reads at most `n` bytes.
@@ -50,7 +49,7 @@ fuzz_target!(|data: &[u8]| {
#[inline(always)]
fn png_compare<R: BufRead, S: BufRead>(reference: png::Decoder<R>, smal: png::Decoder<S>)
- -> std::result::Result<png::OutputInfo, ()>
+ -> std::result::Result<png::OutputInfo, ()>
{
let mut smal = Some(smal);
let (info, mut reference) = reference.read_info().map_err(|_| {
@@ -67,11 +66,9 @@ fn png_compare<R: BufRead, S: BufRead>(reference: png::Decoder<R>, smal: png::De
let mut ref_data = vec![0; info.buffer_size()];
let mut smal_data = vec![0; info.buffer_size()];
- use png::DecodingError::*;
+ let _rref = reference.next_frame(&mut ref_data);
+ let _rsmal = smal.next_frame(&mut smal_data);
- loop {
- let rref = reference.next_frame(&mut ref_data);
- let rsmal = smal.next_frame(&mut smal_data);
- }
+ assert_eq!(smal_data, ref_data);
+ return Ok(info);
}
-