[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: use of uninitialised fields in KDirLister
From: Julian Seward <Julian_Seward () muraroa ! demon ! co ! uk>
Date: 2002-01-31 2:51:39
[Download RAW message or body]
KDirLister::setAutoUpdate / ::setDirOnlyMode / ::setShowingDotFiles
read uninitialised fields in KDirLister, as a result of the behavior
of KDirLister::KDirLister(bool):
(line numbers pertain to kdelibs/kio/kio/kdirlister.cpp rev 1.84)
Use of uninitialised CPU condition code
at 0x40D82F53: KDirLister::setAutoUpdate(bool) (kdirlister.cpp:1130)
by 0x40D8224F: KDirLister::KDirLister(bool) (kdirlister.cpp:1079)
by 0x40DBDBE9: KDirOperator::KDirOperator(const KURL &, QWidget *, const char *)
by 0x40B039A0: KateFileSelector::KateFileSelector(KateMainWindow *,
KateViewManager *, QWidget *, const char *) (kat
Use of uninitialised CPU condition code
at 0x40D82FB8: KDirLister::setDirOnlyMode(bool) (kdirlister.cpp:1157)
by 0x40D8225E: KDirLister::KDirLister(bool)
(/home/kdebuilder/KdeCVS/qt-copy/include/qobject.h:1080)
by 0x40DBDBE9: KDirOperator::KDirOperator(const KURL &, QWidget *, const char *)
by 0x40B039A0: KateFileSelector::KateFileSelector(KateMainWindow *,
KateViewManager *, QWidget *, const char *)
Use of uninitialised CPU condition code
at 0x40D82F90: KDirLister::setShowingDotFiles(bool) (kdirlister.cpp:1144)
by 0x40D82270: KDirLister::KDirLister(bool)
(/home/kdebuilder/KdeCVS/qt-copy/include/qobject.h:208)
by 0x40DBDBE9: KDirOperator::KDirOperator(const KURL &, QWidget *, const char *)
(/home/kdebuilder/KdeCVS/qt-copy/in
by 0x40B039A0: KateFileSelector::KateFileSelector(KateMainWindow *,
KateViewManager *, QWidget *, const char *) (kat
This happens because KDirLister::setAutoUpdate (and setDirOnlyMode /
setShowingDotFiles) test the stored value before updating it (why??),
which matters when the stored value is undefined.
A simple fix is to initialise these fields in KDirLister::KDirLister(bool).
In fact this bug is harmless, but it should be fixed anyway. Suggested patch:
===================================================================
RCS file: /home/kde/kdelibs/kio/kio/kdirlister.cpp,v
retrieving revision 1.84
diff -u -3 -p -r1.84 kdirlister.cpp
--- kdirlister.cpp 2002/01/28 12:03:06 1.84
+++ kdirlister.cpp 2002/01/31 01:54:33
@@ -1075,6 +1075,10 @@ KDirLister::KDirLister( bool _delayedMim
d->numJobs = 0;
d->rootFileItem = 0;
+ d->autoUpdate = false;
+ d->dirOnlyMode = false;
+ d->isShowingDotFiles = false;
+
setAutoUpdate( true );
setDirOnlyMode( false );
setShowingDotFiles( false );
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic