Revert 25580.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25583 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Richard Heck 2008-07-13 19:33:05 +00:00
parent 759f32fe75
commit a692a56f4c

View File

@ -73,13 +73,8 @@ struct UndoElement
MathData * ar, BufferParams const & bp, MathData * ar, BufferParams const & bp,
bool ifb) : bool ifb) :
kind(kin), cursor(cur), cell(cel), from(fro), end(en), kind(kin), cursor(cur), cell(cel), from(fro), end(en),
pars(pl), array(ar), isFullBuffer(ifb) pars(pl), array(ar), bparams(bp), isFullBuffer(ifb)
{ {}
if (isFullBuffer)
bparams = new BufferParams(bp);
}
///
~UndoElement() { delete bparams; }
/// Which kind of operation are we recording for? /// Which kind of operation are we recording for?
UndoKind kind; UndoKind kind;
/// the position of the cursor /// the position of the cursor
@ -95,7 +90,7 @@ struct UndoElement
/// the contents of the saved MathData (for mathed) /// the contents of the saved MathData (for mathed)
MathData * array; MathData * array;
/// Only used in case of full backups /// Only used in case of full backups
BufferParams const * bparams; BufferParams bparams;
/// Only used in case of full backups /// Only used in case of full backups
bool isFullBuffer; bool isFullBuffer;
private: private:
@ -327,9 +322,8 @@ bool Undo::Private::textUndoOrRedo(DocIterator & cur, bool isUndoOperation)
if (undo.isFullBuffer) { if (undo.isFullBuffer) {
LASSERT(undo.pars, /**/); LASSERT(undo.pars, /**/);
// This is a full document // This is a full document
delete otherstack.top().bparams; otherstack.top().bparams = buffer_.params();
otherstack.top().bparams = new BufferParams(buffer_.params()); buffer_.params() = undo.bparams;
buffer_.params() = *undo.bparams;
swap(buffer_.paragraphs(), *undo.pars); swap(buffer_.paragraphs(), *undo.pars);
delete undo.pars; delete undo.pars;
undo.pars = 0; undo.pars = 0;