From 5d95c35ee17ede46a147ae4dd6d419ce63983399 Mon Sep 17 00:00:00 2001
From: Erik Verbruggen <erik.verbruggen@nokia.com>
Date: Tue, 9 Feb 2010 15:45:45 +0100
Subject: [PATCH] Fixing undo history mess-ups.

---
 src/plugins/qmldesigner/core/model/rewriterview.cpp | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/plugins/qmldesigner/core/model/rewriterview.cpp b/src/plugins/qmldesigner/core/model/rewriterview.cpp
index b36a898471f..698486fe900 100644
--- a/src/plugins/qmldesigner/core/model/rewriterview.cpp
+++ b/src/plugins/qmldesigner/core/model/rewriterview.cpp
@@ -433,9 +433,12 @@ void RewriterView::enterErrorState(const QString &errorMessage)
 
 void RewriterView::resetToLastCorrectQml()
 {
-    m_textModifier->textDocument()->setPlainText(lastCorrectQmlSource);
+    m_textModifier->textDocument()->undo();
+    // FIXME: enable the next line when commit 54290ef776a311f0c303e2a8df4de5e39e9a032a shows up in Qt.
+//    m_textModifier->textDocument()->clearUndoRedoStacks(QTextDocument::RedoStack);
     ModelAmender differenceHandler(m_textToModelMerger.data());
-    m_textToModelMerger->load(lastCorrectQmlSource.toUtf8(), differenceHandler);
+//    m_textToModelMerger->load(lastCorrectQmlSource.toUtf8(), differenceHandler);
+    m_textToModelMerger->load(m_textModifier->text().toUtf8(), differenceHandler);
 
     leaveErrorState();
 }
-- 
GitLab