diff --git a/pdfgen.c b/pdfgen.c index 2448dae..f916161 100644 --- a/pdfgen.c +++ b/pdfgen.c @@ -210,12 +210,21 @@ static const char png_chunk_end[] = "IEND"; // PDF standard fonts static const char *valid_fonts[] = { - "Times-Roman", "Times-Bold", - "Times-Italic", "Times-BoldItalic", - "Helvetica", "Helvetica-Bold", - "Helvetica-Oblique", "Helvetica-BoldOblique", - "Courier", "Courier-Bold", - "Courier-Oblique", "Courier-BoldOblique"}; + "Times-Roman", + "Times-Bold", + "Times-Italic", + "Times-BoldItalic", + "Helvetica", + "Helvetica-Bold", + "Helvetica-Oblique", + "Helvetica-BoldOblique", + "Courier", + "Courier-Bold", + "Courier-Oblique", + "Courier-BoldOblique", + "Symbol", + "ZapfDingbats", +}; typedef struct pdf_object pdf_object; diff --git a/tests/massive-file.c b/tests/massive-file.c index a5a1606..aae3011 100644 --- a/tests/massive-file.c +++ b/tests/massive-file.c @@ -1,4 +1,5 @@ #include "pdfgen.h" +#include #include int main(int argc, char **argv) @@ -9,6 +10,10 @@ int main(int argc, char **argv) if (argc > 1) { pagecount = atoi(argv[1]); + if (pagecount < 1 || pagecount > INT_MAX) { + fprintf(stderr, "Invalid page count: %d\n", pagecount); + return 1; + } } pdf_set_font(pdf, "Times-Roman"); for (int i = 0; i < pagecount; i++) {