[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    koffice/libs/kotext
From:       Boudewijn Rempt <boud () valdyas ! org>
Date:       2010-08-17 11:37:45
Message-ID: 20100817113745.9D206AC86A () svn ! kde ! org
[Download RAW message or body]

SVN commit 1164652 by rempt:

fix segfault when saving notes

Originally, the notes stored a complete QTextDocument for every note.
After review that was changed to fragments. This meant, though, that
we lost the reference to the style manager, and that meant that we
couldn't save.

 M  +6 -1      KoInlineNote.cpp  


--- trunk/koffice/libs/kotext/KoInlineNote.cpp #1164651:1164652
@@ -39,8 +39,8 @@
 #include <QFontMetricsF>
 #include <QTextOption>
 #include <QDateTime>
+#include <QPointer>
 
-
 class KoInlineNote::Private
 {
 public:
@@ -52,6 +52,7 @@
     QDateTime date;
     bool autoNumbering;
     KoInlineNote::Type type;
+    QPointer<KoStyleManager> styleManager;
 };
 
 KoInlineNote::KoInlineNote(Type type)
@@ -176,6 +177,7 @@
     QTextCursor cursor(document);
     KoTextDocument textDocument(document);
     textDocument.setStyleManager(styleManager);
+    d->styleManager = styleManager;
     textDocument.setChangeTracker(changeTracker);
 
     KoTextLoader loader(context);
@@ -230,6 +232,9 @@
 {
     KoXmlWriter *writer = &context.xmlWriter();
     QTextDocument *document = new QTextDocument();
+    KoTextDocument textDocument(document);
+    textDocument.setStyleManager(d->styleManager);
+
     QTextCursor cursor(document);
     cursor.insertFragment(d->text);
 
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic