The problem is at line 683, insetgraphics.C

// source file is now full path
/tmp/lyx_tmpdir20237FyBZGA/lyx_tmpbuf0/4_home_bpeng_simuPOP_doc_log_LDdecay.eps

                if (!runparams.nice && GetExtension(temp_file) != ext) {
                        // The LaTeX compiler will not be able to determine
                        // the file format from the extension, so we must
                        // change it.
                        string const new_file = ChangeExtension(temp_file, ext);
// change extension to
/tmp/lyx_tmpdir20237FyBZGA/lyx_tmpbuf0/4_home_bpeng_simuPOP_doc_log_LDdecay.ps

                        if (lyx::support::rename(temp_file, new_file)) {
                                temp_file = new_file;
                                output_file = ChangeExtension(output_file, ext);
                                source_file = ChangeExtension(output_file, ext);
// source_file is no longer full path name, since output_file is not full path
                        } else
                                lyxerr[Debug::GRAPHICS]
                                        << "Could not rename file `"
                                        << temp_file << "' to `" << new_file
                                        << "'." << endl;
                }
                // The extension of temp_file might be != ext!
// source file is no longer full path name
                runparams.exportdata->addExternalFile(tex_format, source_file,
                                                      output_file);


OK, the problem is then turned to line 606,

        string output_file = os::external_path(runparams.nice ?
                params().filename.outputFilename(m_buffer->filePath()) :
                OnlyFilename(temp_file));

Obviously, the OnlyFilename() call is in doubt here. I do not know why
it is used, when I remove it, the crash stops.

Bo

Reply via email to