nbombau / phyloloc

Phylogenetic analysis involving location of sequences
1 stars 0 forks source link

valgrind errors #64

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Please fix valgrind errors.
For example, use dataset4. You'll get plenty, such as:

==3056== ERROR SUMMARY: 17085 errors from 3756 contexts (suppressed: 278 from 
15)
==3056== Invalid read of size 4
==3056== Invalid write of size 4
==3056== More than 1000 different errors detected.  I'm not reporting any more.

Original issue reported on code.google.com by danielgutson@gmail.com on 24 Sep 2011 at 6:02

GoogleCodeExporter commented 8 years ago

Original comment by elsilma...@gmail.com on 25 Sep 2011 at 6:14

GoogleCodeExporter commented 8 years ago
Please run valgrind after each fix.
Currently, as an example, the following error arises:

==2966== Conditional jump or move depends on uninitialised value(s)
==2966==    at 0x8053AE9: PhyloGUI::MainWindow::drawTree() (mainwindow.cpp:301)
==2966==    by 0x807D4A1: PhyloGUI::MainWindow::qt_metacall(QMetaObject::Call, 
int, void**) (moc_mainwindow.cpp:102)
==2966==    by 0x4C2EC99: QMetaObject::metacall(QObject*, QMetaObject::Call, 
int, void**) (in /usr/lib/libQtCore.so.4.6.2)
==2966==    by 0x4C39335: QMetaCallEvent::placeMetaCall(QObject*) (in 
/usr/lib/libQtCore.so.4.6.2)
==2966==    by 0x4C3A3FD: QObject::event(QEvent*) (in 
/usr/lib/libQtCore.so.4.6.2)
==2966==    by 0x41D7325: QWidget::event(QEvent*) (in 
/usr/lib/libQtGui.so.4.6.2)
==2966==    by 0x45F2BC6: QMainWindow::event(QEvent*) (in 
/usr/lib/libQtGui.so.4.6.2)
==2966==    by 0x41794DB: QApplicationPrivate::notify_helper(QObject*, QEvent*) 
(in /usr/lib/libQtGui.so.4.6.2)
==2966==    by 0x41800F8: QApplication::notify(QObject*, QEvent*) (in 
/usr/lib/libQtGui.so.4.6.2)
==2966==    by 0x4C29A3A: QCoreApplication::notifyInternal(QObject*, QEvent*) 
(in /usr/lib/libQtCore.so.4.6.2)
==2966==    by 0x4C2C472: QCoreApplicationPrivate::sendPostedEvents(QObject*, 
int, QThreadData*) (in /usr/lib/libQtCore.so.4.6.2)
==2966==    by 0x4C2C5DC: QCoreApplication::sendPostedEvents(QObject*, int) (in 
/usr/lib/libQtCore.so.4.6.2)

I checked that this is NOT Qt/gtk related.

Original comment by daniel.g...@fudepan.org.ar on 10 Jan 2012 at 7:49

GoogleCodeExporter commented 8 years ago
Please let me know when I can start testing a warning-free, memory-correct, 
errors-free version.

Original comment by daniel.g...@fudepan.org.ar on 10 Jan 2012 at 7:51

GoogleCodeExporter commented 8 years ago
fixed in rev 249 by bombax

Original comment by elsilma...@gmail.com on 28 Jan 2012 at 8:16

GoogleCodeExporter commented 8 years ago

Original comment by elsilma...@gmail.com on 28 Jan 2012 at 8:17

GoogleCodeExporter commented 8 years ago
Valgrind still shows leaks...

For example:

==2910== 36,856 (12 direct, 36,844 indirect) bytes in 1 blocks are definitely 
lost in loss record 6,510 of 6,515
==2910==    at 0x402569A: operator new(unsigned int) (vg_replace_malloc.c:255)
==2910==    by 0x806D62D: 
__gnu_cxx::new_allocator<std::_List_node<Domain::Node*> >::allocate(unsigned 
int, void const*) (new_allocator.h:89)
==2910==    by 0x806CF14: std::_List_base<Domain::Node*, 
std::allocator<Domain::Node*> >::_M_get_node() (stl_list.h:316)
==2910==    by 0x806C479: std::list<Domain::Node*, 
std::allocator<Domain::Node*> >::_M_create_node(Domain::Node* const&) 
(stl_list.h:461)
==2910==    by 0x806B8E9: std::list<Domain::Node*, 
std::allocator<Domain::Node*> >::_M_insert(std::_List_iterator<Domain::Node*>, 
Domain::Node* const&) (stl_list.h:1407)
==2910==    by 0x806AD5F: std::list<Domain::Node*, 
std::allocator<Domain::Node*> >::push_back(Domain::Node* const&) 
(stl_list.h:920)
==2910==    by 0x8069917: 
PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensus::ConsensorAspect<Prop
agation::PropagatorAspect<Locations::LocationAspect<Domain::Node> > > > >* 
Domain::Node::addChild<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensu
s::ConsensorAspect<Propagation::PropagatorAspect<Locations::LocationAspect<Domai
n::Node> > > > > >() (INode.h:122)
==2910==    by 0x8068BBD: 
Consensus::ClusterTree<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensu
s::ConsensorAspect<Propagation::PropagatorAspect<Locations::LocationAspect<Domai
n::Node> > > > >, 
Propagation::StatisticCollectorObserver<PhyloGUI::GuiAspect<Propagation::Statist
icAspect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::Loc
ationAspect<Domain::Node> > > > > > 
>::nodeFromCluster(Consensus::NodeCluster<PhyloGUI::GuiAspect<Propagation::Stati
sticAspect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::L
ocationAspect<Domain::Node> > > > > > const&, 
PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensus::ConsensorAspect<Prop
agation::PropagatorAspect<Locations::LocationAspect<Domain::Node> > > > >*) 
(ClusterTree.h:133)
==2910==    by 0x80657FA: 
Consensus::ClusterTree<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensu
s::ConsensorAspect<Propagation::PropagatorAspect<Locations::LocationAspect<Domai
n::Node> > > > >, 
Propagation::StatisticCollectorObserver<PhyloGUI::GuiAspect<Propagation::Statist
icAspect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::Loc
ationAspect<Domain::Node> > > > > > 
>::bindClusterToConsensus(std::_List_iterator<Consensus::NodeCluster<PhyloGUI::G
uiAspect<Propagation::StatisticAspect<Consensus::ConsensorAspect<Propagation::Pr
opagatorAspect<Locations::LocationAspect<Domain::Node> > > > > > >, 
std::vector<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensus::Consenso
rAspect<Propagation::PropagatorAspect<Locations::LocationAspect<Domain::Node> > 
> > >*, 
std::allocator<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensus::Conse
nsorAspect<Propagation::PropagatorAspect<Locations::LocationAspect<Domain::Node>
 > > > >*> >&, unsigned int) const (ClusterTree.h:176)
==2910==    by 0x8061634: 
Consensus::ClusterTree<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Consensu
s::ConsensorAspect<Propagation::PropagatorAspect<Locations::LocationAspect<Domai
n::Node> > > > >, 
Propagation::StatisticCollectorObserver<PhyloGUI::GuiAspect<Propagation::Statist
icAspect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::Loc
ationAspect<Domain::Node> > > > > > >::toTree() (ClusterTree.h:306)
==2910==    by 0x805DA22: 
Consensus::StrictConsensor<PhyloGUI::GuiAspect<Propagation::StatisticAspect<Cons
ensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::LocationAspect<D
omain::Node> > > > >, 
Propagation::StatisticCollectorObserver<PhyloGUI::GuiAspect<Propagation::Statist
icAspect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::Loc
ationAspect<Domain::Node> > > > > > 
>::consensus(Domain::ITreeCollection<PhyloGUI::GuiAspect<Propagation::StatisticA
spect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::Locati
onAspect<Domain::Node> > > > > >&, 
Propagation::StatisticCollectorObserver<PhyloGUI::GuiAspect<Propagation::Statist
icAspect<Consensus::ConsensorAspect<Propagation::PropagatorAspect<Locations::Loc
ationAspect<Domain::Node> > > > > >&, Locations::LocationManager&) 
(StrictConsensor.h:129)
==2910==    by 0x8053544: 
PhyloGUI::MainWindow::on_actionProcess_tree_triggered() (mainwindow.cpp:274)

when opening dataset1, propagate, close, dataset7, propagate, exit.

Original comment by daniel.g...@fudepan.org.ar on 20 Feb 2012 at 9:30