Fix crash reported on list when renaming a child buffer and

then trying to compile.

    There are really two problems here. One is that the renamed
    buffer needs to be reloaded. All kinds of files, etc, may not
    exist any more, if we've been saved to a new directory; our
    children e.g. may not be in the right place. And, in this case,
    we may no longer be a child of our old parent. Reloading will
    fix all of that.

    On reload, though, we need to clear our parent, since we may
    not have one any more. It will get reset if need be.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40609 a592a061-630c-0410-9148-cb99ea01b6c8
(cherry picked from commit 9283cbdbcb)
This commit is contained in:
Richard Heck 2012-01-13 03:31:01 +00:00 committed by Richard Heck
parent b674c190e7
commit e5b0444bbb
3 changed files with 10 additions and 2 deletions

View File

@ -4427,6 +4427,8 @@ Buffer::ReadStatus Buffer::reload()
d->filename.refresh();
docstring const disp_fn = makeDisplayPath(d->filename.absFileName());
// clear parent. this will get reset if need be.
d->setParent(0);
ReadStatus const status = loadLyXFile();
if (status == ReadSuccess) {
updateBuffer();

View File

@ -2292,7 +2292,10 @@ bool GuiView::renameBuffer(Buffer & b, docstring const & newname)
}
}
return saveBuffer(b, fname);
bool const saved = saveBuffer(b, fname);
if (saved)
b.reload();
return saved;
}

View File

@ -97,6 +97,8 @@ What's new
- Fix crash when using undo in a paragraph with layout Bibliography (bug 7111).
- Fix crash when renaming a child buffer.
- Replace current selection when pasting (bug 8027).
- Make sure that undo restores environment depth correctly (bug 8159).
@ -108,7 +110,8 @@ What's new
- Fix problem with configure.py when the user profile path on Windows
contains non-ascii characters (bug 8254).
- remove annoying startup debug message.
- Remove annoying startup debug message.
* DOCUMENTATION AND LOCALIZATION