commit 0a58035f84b70b8b83f22b4c1de5d9554988ba77
Author: Juergen Spitzmueller <[email protected]>
Date:   Sun Jun 25 10:29:19 2017 +0200

    Catch xdvipdfmx driver error (that breaks XeTeX compilation).
    
    This prevents an assertion due to an unrecognized error.
    
    Fixes: #10076.
---
 src/LaTeX.cpp |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/src/LaTeX.cpp b/src/LaTeX.cpp
index 0a37d03..8597e6d 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.:

Reply via email to