]> git.lyx.org Git - lyx.git/commitdiff
Catch xdvipdfmx driver error (that breaks XeTeX compilation).
authorJuergen Spitzmueller <spitz@lyx.org>
Sun, 25 Jun 2017 08:29:19 +0000 (10:29 +0200)
committerJuergen Spitzmueller <spitz@lyx.org>
Sun, 25 Jun 2017 08:29:19 +0000 (10:29 +0200)
This prevents an assertion due to an unrecognized error.

Fixes: #10076.
src/LaTeX.cpp

index 0a37d0392de1eb7673a622605456da85269d165c..8597e6db6062aa0758ad76cbcee3166a94060be0 100644 (file)
@@ -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.: