From 0a58035f84b70b8b83f22b4c1de5d9554988ba77 Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Sun, 25 Jun 2017 10:29:19 +0200 Subject: [PATCH] Catch xdvipdfmx driver error (that breaks XeTeX compilation). This prevents an assertion due to an unrecognized error. Fixes: #10076. --- src/LaTeX.cpp | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/LaTeX.cpp b/src/LaTeX.cpp index 0a37d0392d..8597e6db60 100644 --- a/src/LaTeX.cpp +++ b/src/LaTeX.cpp @@ -908,8 +908,16 @@ int LaTeX::scanLogFile(TeXErrors & terr) || contains(token, "no pages of output")) { // No output file (e.g. the DVI or PDF) was created retval |= NO_OUTPUT; + } else if (contains(token, "Error 256 (driver return code)")) { + // This is a xdvipdfmx driver error reported by XeTeX. + // We have to check whether an output PDF file was created. + FileName pdffile = file; + pdffile.changeExtension("pdf"); + if (!pdffile.exists()) + // No output PDF file was created (see #10076) + retval |= NO_OUTPUT; } else if (contains(token, "That makes 100 errors")) { - // More than 100 errors were reprted + // More than 100 errors were reported retval |= TOO_MANY_ERRORS; } else if (prefixIs(token, "!pdfTeX error:")) { // otherwise we dont catch e.g.: