[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Re: Suspicious code in kdegraphics-3.5.2
From: Clarence Dang <dang () kde ! org>
Date: 2006-05-19 12:53:43
Message-ID: 200605192253.45530.dang () kde ! org
[Download RAW message or body]
I've applied all my fixes to these harmless warnings to trunk/KDE/kdegraphics.
Haven't touched branches/KDE/3.5/kdegraphics - that's supposed to be stable
code so if it ain't broke, won't fix it.
On Saturday 22 April 2006 22:19, Frans Englich wrote:
> On Saturday 22 April 2006 11:16, Clarence Dang wrote:
> > On Saturday 22 April 2006 09:36, Christoph Bartoschek wrote:
>
> [...]
>
> > > - kolourpaint/tools/kptoolselection.cpp:1095
> > > - kolourpaint/tools/kptoolselection.cpp:1217
> > >
> > > && true ?
> >
> > Left in for debugging - easy to change to "&& false".
>
> I think better debugging practices exists. That code ends up in production
> code and it is confusing.
Ok, convinced, fixed.
> > > If m_mainWindow is NULL as indicated by line 1637, then line 1646
> > > crashes.
> >
> > "Will never happen". I am tempted simply to remove the "m_mainWindow"
> > checks entirely as "m_mainWindow" can never be NULL.
>
> If it's clear that it never can be null, such as that m_mainWindow is set
> in the constructor and that it's deleted in the destructor, I suggest:
>
> * Declare m_mainWindow to be a const pointer("QMainWindow *const
> m_mainWindow;") and initialize it with constructor initialization.
> * Add Q_ASSERTs do document and check that really is the case, in critical
> paths. This should hardly be necessary if you declare the pointer const.
Gone with the Q_ASSERT. Feel free to do the const pointer.
Both Coverity and Bartoschek should not find anything now.
Except I still have to check the Coverity
kpViewScrollableContainer::repaintWidgetAtResizeLineViewRect(QWidget *, const
QRect &) possible null ptr passed to dynamic_cast.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic