diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/pdf/pdf-write.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/source/pdf/pdf-write.c b/source/pdf/pdf-write.c index 12d0f605..0a66365e 100644 --- a/source/pdf/pdf-write.c +++ b/source/pdf/pdf-write.c @@ -3112,8 +3112,8 @@ void pdf_write_document(fz_context *ctx, pdf_document *doc, fz_output *out, pdf_ fz_throw(ctx, FZ_ERROR_GENERIC, "Can't do incremental writes with garbage collection"); if (in_opts->do_incremental && in_opts->do_linear) fz_throw(ctx, FZ_ERROR_GENERIC, "Can't do incremental writes with linearisation"); - if (pdf_has_unsaved_sigs(ctx, doc)) - fz_throw(ctx, FZ_ERROR_GENERIC, "Can't write pdf that has unsaved sigs to a fz_output!"); + if (pdf_has_unsaved_sigs(ctx, doc) && !out->as_stream) + fz_throw(ctx, FZ_ERROR_GENERIC, "Can't write pdf that has unsaved sigs to a fz_output unless it supports fz_stream_from_output!"); prepare_for_save(ctx, doc, in_opts); |