diff --git a/src/page.rs b/src/page.rs index 4c674e7..195c2f9 100644 --- a/src/page.rs +++ b/src/page.rs @@ -252,7 +252,7 @@ impl Page { }?; let mut buf = unsafe { Buffer::from_raw(inner) }; let mut res = String::new(); - buf.read_to_string(&mut res).unwrap(); + buf.read_to_string(&mut res)?; Ok(res) } diff --git a/tests/files/no-json.pdf b/tests/files/no-json.pdf new file mode 100755 index 0000000..ecd435f Binary files /dev/null and b/tests/files/no-json.pdf differ diff --git a/tests/test_issues.rs b/tests/test_issues.rs index ff5c608..89f734f 100644 --- a/tests/test_issues.rs +++ b/tests/test_issues.rs @@ -117,3 +117,11 @@ fn test_issue_i32_box() { assert!(stext_page.is_ok()); } } + +#[test] +fn test_issue_no_json() { + let doc = PdfDocument::open("tests/files/no-json.pdf").unwrap(); + let page = doc.load_page(0).unwrap(); + let json = page.stext_page_as_json_from_page(1.0); + assert!(json.is_err()); +}