]> git.lyx.org Git - lyx.git/blobdiff - src/exporter.C
hopefully fix tex2lyx linking.
[lyx.git] / src / exporter.C
index 762428fa5d9ceed79af18bd00dee98049c3901ad..eff1172ae893d0100c3922928fae39103d2191ec 100644 (file)
@@ -203,7 +203,8 @@ bool Exporter::Export(Buffer * buffer, string const & format,
        // LaTeX backend
        else if (backend_format == format) {
                runparams.nice = true;
-               buffer->makeLaTeXFile(filename, string(), runparams);
+               if (!buffer->makeLaTeXFile(filename, string(), runparams))
+                       return false;
        } else if (!lyxrc.tex_allows_spaces
                   && contains(buffer->filePath(), ' ')) {
                Alert::error(_("File name error"),
@@ -211,22 +212,25 @@ bool Exporter::Export(Buffer * buffer, string const & format,
                return false;
        } else {
                runparams.nice = false;
-               buffer->makeLaTeXFile(filename, buffer->filePath(), runparams);
+               if (!buffer->makeLaTeXFile(filename, buffer->filePath(), runparams))
+                       return false;
        }
 
        string const error_type = (format == "program")? "Build" : bufferFormat(*buffer);
-       bool const success = converters.convert(buffer, filename, filename,
-               backend_format, format, result_file,
+       string const ext = formats.extension(format);
+       string const tmp_result_file = changeExtension(filename, ext);
+       bool const success = converters.convert(buffer, filename,
+               tmp_result_file, buffer->fileName(), backend_format, format,
                buffer->errorList(error_type));
        // Emit the signal to show the error list.
        buffer->errors(error_type);
        if (!success)
                return false;
 
-       if (!put_in_tempdir) {
-               string const tmp_result_file = result_file;
-               result_file = changeExtension(buffer->fileName(),
-                                             formats.extension(format));
+       if (put_in_tempdir)
+               result_file = tmp_result_file;
+       else {
+               result_file = changeExtension(buffer->fileName(), ext);
                // We need to copy referenced files (e. g. included graphics
                // if format == "dvi") to the result dir.
                vector<ExportedFile> const files =