LibPDF: Don't abort on unsupported drawing operations

Instead of calling TODO(), which will abort the program, we now return
an Error specifying that we haven't implemented the drawing operation
yet. This will now nicely trickle up all the way through to the
PDFViewer, which will then notify its clients about the problem.
This commit is contained in:
Rodrigo Tobar 2022-12-14 23:10:26 +08:00 committed by Andreas Kling
parent e87fecf710
commit c4bc27f274
Notes: sideshowbarker 2024-07-17 10:08:28 +09:00

View File

@ -13,11 +13,10 @@
#define RENDERER_HANDLER(name) \
PDFErrorOr<void> Renderer::handle_##name([[maybe_unused]] Vector<Value> const& args, [[maybe_unused]] Optional<NonnullRefPtr<DictObject>> extra_resources)
#define RENDERER_TODO(name) \
RENDERER_HANDLER(name) \
{ \
dbgln("[PDF::Renderer] Unsupported draw operation " #name); \
TODO(); \
#define RENDERER_TODO(name) \
RENDERER_HANDLER(name) \
{ \
return Error(Error::Type::RenderingUnsupported, "draw operation: " #name); \
}
namespace PDF {