Adjust the location of the autosave file for unnamed docs.

If the document is unnamed try to save in the backup dir, else in the default document path, and as a last try in the filePath, which will most often be the temporary directory.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29508 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Vincent van Ravesteijn 2009-05-03 10:24:12 +00:00
parent aa4c7e7ef5
commit af39d35545

View File

@ -2607,7 +2607,16 @@ int AutoSaveBuffer::generateChild()
FileName Buffer::getAutosaveFilename() const
{
string const fpath = isUnnamed() ? lyxrc.document_path : filePath();
// if the document is unnamed try to save in the backup dir, else
// in the default document path, and as a last try in the filePath,
// which will most often be the temporary directory
string fpath;
if (isUnnamed())
fpath = lyxrc.backupdir_path.empty() ? lyxrc.document_path
: lyxrc.backupdir_path;
if (!isUnnamed() || fpath.empty() || !FileName(fpath).exists())
fpath = filePath();
string const fname = "#" + d->filename.onlyFileName() + "#";
return makeAbsPath(fname, fpath);
}