diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2017-10-25 18:52:06 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2017-10-25 18:52:06 +0000 |
commit | e936503665f696a7733d9ecf37de2286ec72fc61 (patch) | |
tree | 5031fa19a7900f000fbb81a3185e31545691a2e1 /term_ps.c | |
parent | b13013d058e969730f26c5e6af2f7429c4864875 (diff) | |
download | mandoc-e936503665f696a7733d9ecf37de2286ec72fc61.tar.gz |
Properly close out the top-level Font object, the end-of-page
Resource objects, and the Catalog object, fixing three PDF syntax
errors that were present in every PDF file generated with mandoc
since the initial checkin of the formatter in July 2010.
Bug reported by Jan Stary <hans at stare dot cz> on misc@.
Diffstat (limited to 'term_ps.c')
-rw-r--r-- | term_ps.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -759,7 +759,7 @@ ps_closepage(struct termp *p) ps_printf(p, "/Font <<\n"); for (i = 0; i < (int)TERMFONT__MAX; i++) ps_printf(p, "/F%d %d 0 R\n", i, 3 + i); - ps_printf(p, ">>\n>>\n"); + ps_printf(p, ">>\n>>\nendobj\n"); /* Page node. */ pdf_obj(p, base + 3); @@ -824,7 +824,7 @@ ps_end(struct termp *p) ps_printf(p, "<<\n"); ps_printf(p, "/Type /Catalog\n"); ps_printf(p, "/Pages 2 0 R\n"); - ps_printf(p, ">>\n"); + ps_printf(p, ">>\nendobj\n"); xref = p->ps->pdfbytes; ps_printf(p, "xref\n"); ps_printf(p, "0 %zu\n", base + 1); @@ -918,7 +918,7 @@ ps_begin(struct termp *p) ps_printf(p, "/Subtype /Type1\n"); ps_printf(p, "/Name /F%d\n", i); ps_printf(p, "/BaseFont /%s\n", fonts[i].name); - ps_printf(p, ">>\n"); + ps_printf(p, ">>\nendobj\n"); } } |