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

List:       kde-commits
Subject:    [kreport] src: Avoid nullptr dereference, simplify using setVisible()
From:       Jaroslaw Staniek <staniek () kde ! org>
Date:       2016-03-31 20:00:59
Message-ID: E1alim3-0004nL-Vb () scm ! kde ! org
[Download RAW message or body]

Git commit 735ea0b5bb954f2802780aaebbe0c6d5c2d99369 by Jaroslaw Staniek.
Committed on 31/03/2016 at 19:56.
Pushed by staniek into branch 'master'.

Avoid nullptr dereference, simplify using setVisible()

(clang analyzer)

M  +3    -1    src/common/KReportRenderObjects.cpp
M  +14   -8    src/wrtembed/KReportDesignerSectionDetailGroup.cpp

http://commits.kde.org/kreport/735ea0b5bb954f2802780aaebbe0c6d5c2d99369

diff --git a/src/common/KReportRenderObjects.cpp \
b/src/common/KReportRenderObjects.cpp index 263c056..a0c66ba 100644
--- a/src/common/KReportRenderObjects.cpp
+++ b/src/common/KReportRenderObjects.cpp
@@ -138,7 +138,9 @@ void OROPage::addPrimitive(OROPrimitive* p, bool atBeginning, \
bool notify)  }
 
     if (notify) {
-        document()->notifyChange(page());
+        if (m_document) {
+            m_document->notifyChange(page());
+        }
     }
 }
 
diff --git a/src/wrtembed/KReportDesignerSectionDetailGroup.cpp \
b/src/wrtembed/KReportDesignerSectionDetailGroup.cpp index c708472..5e706c0 100644
--- a/src/wrtembed/KReportDesignerSectionDetailGroup.cpp
+++ b/src/wrtembed/KReportDesignerSectionDetailGroup.cpp
@@ -150,21 +150,27 @@ void KReportDesignerSectionDetailGroup::initFromXML( const \
QDomElement &element  void \
KReportDesignerSectionDetailGroup::setGroupHeaderVisible(bool visible)  {
     if (groupHeaderVisible() != visible) {
-        if (d->reportSectionDetail && d->reportSectionDetail->reportDesigner()) \
d->reportSectionDetail->reportDesigner()->setModified(true); +        if \
(d->reportSectionDetail && d->reportSectionDetail->reportDesigner()) { +            \
d->reportSectionDetail->reportDesigner()->setModified(true); +        }
+    }
+    d->groupHeader->setVisible(visible);
+    if (d->reportSectionDetail) {
+        d->reportSectionDetail->adjustSize();
     }
-    if (visible) d->groupHeader->show();
-    else d->groupHeader->hide();
-    d->reportSectionDetail->adjustSize();
 }
 
 void KReportDesignerSectionDetailGroup::setGroupFooterVisible(bool visible)
 {
     if (groupFooterVisible() != visible) {
-        if (d->reportSectionDetail && d->reportSectionDetail->reportDesigner()) \
d->reportSectionDetail->reportDesigner()->setModified(true); +        if \
(d->reportSectionDetail && d->reportSectionDetail->reportDesigner()) { +            \
d->reportSectionDetail->reportDesigner()->setModified(true); +        }
+    }
+    d->groupFooter->setVisible(visible);
+    if (d->reportSectionDetail) {
+        d->reportSectionDetail->adjustSize();
     }
-    if (visible) d->groupFooter->show();
-    else d->groupFooter->hide();
-    d->reportSectionDetail->adjustSize();
 }
 
 void KReportDesignerSectionDetailGroup::setPageBreak(KReportDesignerSectionDetailGroup::PageBreak \
pb)


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

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