On 12/27/2017 09:34 AM, Jürgen Spitzmüller wrote:
> Am Freitag, den 22.12.2017, 00:58 +0100 schrieb Richard Heck:
>> commit b5e5c2576a8ed83faa52d0a35bb15dc54a8b1a91
>> Author: Richard Heck <rgh...@lyx.org>
>> Date:   Thu Dec 21 18:46:06 2017 -0500
>>
>>     Allow makeindex, nomencl, and bibtex runs to be canceled, too.
> As of this commit, BibTeX errors are no longer properly reported via
> the error dialog. In case of a BibTeX error, LyX just quits with a
> cryptic message: "No output file was generated."

Can you try the attached? Looks like I was over-enthusiastic about aborting.

rh

diff --git a/src/LaTeX.cpp b/src/LaTeX.cpp
index 79824217b8..494c68f1cf 100644
--- a/src/LaTeX.cpp
+++ b/src/LaTeX.cpp
@@ -286,7 +286,7 @@ int LaTeX::run(TeXErrors & terr)
                // onlyFileName() is needed for cygwin
                int const ret = 
                                
runMakeIndex(onlyFileName(idxfile.absFileName()), runparams);
-               if (ret)
+               if (ret == Systemcall::KILLED)
                        return ret;
                rerun = true;
        }
@@ -299,7 +299,7 @@ int LaTeX::run(TeXErrors & terr)
        // FIXME: Sort out the real problem in DepTable.
        if (head.haschanged(nlofile) || (nlofile.exists() && 
nlofile.isFileEmpty())) {
                int const ret = runMakeIndexNomencl(file, ".nlo", ".nls");
-               if (ret)
+               if (ret == Systemcall::KILLED)
                        return ret;
                rerun = true;
        }
@@ -331,7 +331,7 @@ int LaTeX::run(TeXErrors & terr)
                updateBibtexDependencies(head, bibtex_info);
                int exitCode;
                rerun |= runBibTeX(bibtex_info, runparams, exitCode);
-               if (exitCode)
+               if (exitCode == Systemcall::KILLED)
                        return exitCode;
                FileName const blgfile(changeExtension(file.absFileName(), 
".blg"));
                if (blgfile.exists())
@@ -387,7 +387,7 @@ int LaTeX::run(TeXErrors & terr)
                updateBibtexDependencies(head, bibtex_info);
                int exitCode;
                rerun |= runBibTeX(bibtex_info, runparams, exitCode);
-               if (exitCode)
+               if (exitCode == Systemcall::KILLED)
                        return exitCode;
                FileName const blgfile(changeExtension(file.absFileName(), 
".blg"));
                if (blgfile.exists())
@@ -410,7 +410,7 @@ int LaTeX::run(TeXErrors & terr)
                // onlyFileName() is needed for cygwin
                int const ret = runMakeIndex(onlyFileName(changeExtension(
                                file.absFileName(), ".idx")), runparams);
-               if (ret)
+               if (ret == Systemcall::KILLED)
                        return ret;
                rerun = true;
        }

Reply via email to