diff --git a/pdf.c b/pdf.c index 8f4c3fd4e7d148dca1dfa58ceb3a3dafbb6c0faf..d7c21060aa476f506c406039268189e30b1f184a 100644 --- a/pdf.c +++ b/pdf.c @@ -1052,8 +1052,9 @@ init_parser(struct Env *aux) h_bind_indirect(array, array_); /* streams */ - H_RULE(stmbeg, SEQ(dict, OPT(ws), LIT("stream"), OPT(cr), lf)); - H_RULE(stmend, CHX(SEQ(eol, LIT("endstream")), + H_RULE(stmbeg, SEQ(dict, OPT(ws), LIT("stream"), OPT(cr), + CHX(lf, VIOL(epsilon, "No linefeed after 'stream' (severity=7)")))); + H_RULE(stmend, CHX(SEQ(eol, LIT("endstream")), VIOL(LIT("ndstream"), "Stream length >1-too-long (severity=10)"), VIOL(SEQ(h_many1(wchar), LIT("endstream")), "No newline before endstream (severity=7)"),