From 79b4293687bd6c3841989ab1d080d0d403d69518 Mon Sep 17 00:00:00 2001 From: Rodrigo Tobar Date: Sun, 12 Feb 2023 14:50:41 +0800 Subject: [PATCH] LibPDF: Prevent crashes when loading XObject streams These streams might need a Filter that isn't implemented yet, and thus cannot be blindly MUST()-ed. --- Userland/Libraries/LibPDF/Renderer.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Userland/Libraries/LibPDF/Renderer.cpp b/Userland/Libraries/LibPDF/Renderer.cpp index 98f2d2a206..e1723756e8 100644 --- a/Userland/Libraries/LibPDF/Renderer.cpp +++ b/Userland/Libraries/LibPDF/Renderer.cpp @@ -619,8 +619,8 @@ RENDERER_HANDLER(paint_xobject) VERIFY(args.size() > 0); auto resources = extra_resources.value_or(m_page.resources); auto xobject_name = args[0].get>()->cast()->name(); - auto xobjects_dict = MUST(resources->get_dict(m_document, CommonNames::XObject)); - auto xobject = MUST(xobjects_dict->get_stream(m_document, xobject_name)); + auto xobjects_dict = TRY(resources->get_dict(m_document, CommonNames::XObject)); + auto xobject = TRY(xobjects_dict->get_stream(m_document, xobject_name)); Optional> xobject_resources {}; if (xobject->dict()->contains(CommonNames::Resources)) {