Browse Source

bug-fix: VFile and document() may have different modification state

Le Tan 8 years ago
parent
commit
197e064a1a
2 changed files with 6 additions and 2 deletions
  1. 5 1
      src/vedit.cpp
  2. 1 1
      src/vmdedit.cpp

+ 5 - 1
src/vedit.cpp

@@ -147,7 +147,7 @@ void VEdit::saveFile()
         return;
     }
     m_file->setContent(toHtml());
-    document()->setModified(false);
+    setModified(false);
 }
 
 void VEdit::reloadFile()
@@ -170,12 +170,16 @@ void VEdit::scrollToLine(int p_lineNumber)
 
 bool VEdit::isModified() const
 {
+    Q_ASSERT(m_file ? (m_file->isModified() == document()->isModified()) : true);
     return document()->isModified();
 }
 
 void VEdit::setModified(bool p_modified)
 {
     document()->setModified(p_modified);
+    if (m_file) {
+        m_file->setModified(p_modified);
+    }
 }
 
 void VEdit::insertImage()

+ 1 - 1
src/vmdedit.cpp

@@ -126,7 +126,7 @@ void VMdEdit::saveFile()
     }
 
     m_file->setContent(toPlainTextWithoutImg());
-    document()->setModified(false);
+    setModified(false);
 }
 
 void VMdEdit::reloadFile()