From 9c0dd478df8be131fcd92e66c804826cf3a11e3f 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 +++++++++- status.22x | 2 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/LaTeX.cpp b/src/LaTeX.cpp index 739a9926dd..46dda96a88 100644 --- a/src/LaTeX.cpp +++ b/src/LaTeX.cpp @@ -887,8 +887,16 @@ int LaTeX::scanLogFile(TeXErrors & terr) } else if (contains(token, "No pages of output")) { // A dvi file was not 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.: diff --git a/status.22x b/status.22x index 4546661d6c..7621e076c6 100644 --- a/status.22x +++ b/status.22x @@ -49,6 +49,8 @@ What's new - Catch "! Incomplete \if[x]" LaTeX error (bug 10666). +- Catch xdvipdfmx driver error that breaks XeTeX compilation (bug 10076). + - Fix caption handling in listings insets when it is split into multiple lines in the LaTeX output (bug 10705).