#include "support/FileNameList.h"
#include "support/filetools.h"
#include "support/gettext.h"
+#include "support/lassert.h"
#include "support/lstrings.h"
#include "support/os.h"
#include "support/Package.h"
LYXERR(Debug::FILES, "No converter defined! "
"I use convertDefault.py:\n\t" << command);
Systemcall one;
- one.startscript(Systemcall::Wait, command, buffer ?
- buffer->filePath() : string());
+ one.startscript(Systemcall::Wait, command,
+ buffer ? buffer->filePath() : string(),
+ buffer ? buffer->layoutPos() : string());
if (to_file.isReadableFile()) {
if (conversionflags & try_cache)
ConverterCache::get().add(orig_from,
if (dummy) {
res = one.startscript(Systemcall::DontWait,
to_filesystem8bit(from_utf8(command)),
- buffer ? buffer->filePath() : string());
+ buffer ? buffer->filePath() : string(),
+ buffer ? buffer->layoutPos() : string());
// We're not waiting for the result, so we can't do anything
// else here.
} else {
res = one.startscript(Systemcall::Wait,
to_filesystem8bit(from_utf8(command)),
buffer ? buffer->filePath()
+ : string(),
+ buffer ? buffer->layoutPos()
: string());
if (!real_outfile.empty()) {
Mover const & mover = getMover(conv.to());
" > " + quoteName(logfile);
one.startscript(Systemcall::Wait,
to_filesystem8bit(from_utf8(command2)),
- buffer->filePath());
+ buffer->filePath(),
+ buffer->layoutPos());
if (!scanLog(*buffer, command, makeAbsPath(logfile, path), errorList))
return false;
}
// do the LaTeX run(s)
string const name = buffer.latexName();
LaTeX latex(command, runparams, FileName(makeAbsPath(name)),
- buffer.filePath());
+ buffer.filePath(), buffer.layoutPos(),
+ buffer.lastPreviewError());
TeXErrors terr;
ShowMessage show(buffer);
latex.message.connect(show);
if (result & LaTeX::ERRORS)
buffer.bufferErrors(terr, errorList);
- // check return value from latex.run().
- if (result & LaTeX::NO_LOGFILE) {
+ if (!errorList.empty()) {
+ // We will show the LaTeX Errors GUI later which contains
+ // specific error messages so it would be repetitive to give
+ // e.g. the "finished with an error" dialog in addition.
+ }
+ else if (result & LaTeX::NO_LOGFILE) {
docstring const str =
bformat(_("LaTeX did not run successfully. "
"Additionally, LyX could not locate "
"finished with an error. "
"It is recommended you fix the cause of the external "
"program's error (check the logs). "), from_utf8(command));
- // FIXME: In LyX 2.3.0 the warning will be converted to an error.
Alert::error(_("LaTeX failed"), str);
} else if (result & LaTeX::NO_OUTPUT) {
Alert::warning(_("Output is empty"),
for (; it != end ; ++it) {
int const from = formats.getNumber(it->from());
int const to = formats.getNumber(it->to());
+ LASSERT(from >= 0, continue);
+ LASSERT(to >= 0, continue);
G_.addEdge(from, to);
}
}