From kde-commits Wed Mar 02 21:07:08 2011 From: Alexey Khudyakov Date: Wed, 02 Mar 2011 21:07:08 +0000 To: kde-commits Subject: KDE/kdeedu/kstars/kstars/skycomponents Message-Id: <20110302210708.A20DEAC8C3 () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=129910007426052 SVN commit 1223414 by khudyakov: Fix mempory leak! SkyPoints were never freed CCMAIL: kstars-devel@kde.org M +10 -13 ecliptic.cpp M +5 -6 equator.cpp --- trunk/KDE/kdeedu/kstars/kstars/skycomponents/ecliptic.cpp #1223413:1223414 @@ -80,27 +80,24 @@ } void Ecliptic::drawCompassLabels() { - QPointF cpoint; - bool visible; - QString label; - const Projector *proj = SkyMap::Instance()->projector(); KStarsData *data = KStarsData::Instance(); SkyLabeler* skyLabeler = SkyLabeler::Instance(); KSNumbers num( data->ut().djd() ); dms elat(0.0), elng(0.0); - + QString label; for( int ra = 0; ra < 23; ra += 6 ) { elng.setH( ra ); - SkyPoint* o = new SkyPoint(); - o->setFromEcliptic( num.obliquity(), &elng, &elat ); - o->setRA0( o->ra() ); - o->setDec0( o->dec() ); - o->EquatorialToHorizontal( data->lst(), data->geo()->lat() ); - cpoint = proj->toScreen( o, false, &visible ); - if ( proj->checkVisibility( o ) && visible ) { - label.setNum( o->ra().reduce().Degrees() ); + SkyPoint o; + o.setFromEcliptic( num.obliquity(), &elng, &elat ); + o.setRA0( o.ra() ); + o.setDec0( o.dec() ); + o.EquatorialToHorizontal( data->lst(), data->geo()->lat() ); + bool visible; + QPointF cpoint = proj->toScreen( &o, false, &visible ); + if( visible && proj->checkVisibility( &o ) ) { + label.setNum( o.ra().reduce().Degrees() ); skyLabeler->drawGuideLabel( cpoint, label, 0.0 ); } } --- trunk/KDE/kdeedu/kstars/kstars/skycomponents/equator.cpp #1223413:1223414 @@ -81,7 +81,6 @@ } void Equator::drawCompassLabels() { - QPointF cpoint; QString label; const Projector *proj = SkyMap::Instance()->projector(); @@ -91,12 +90,12 @@ KSNumbers num( data->ut().djd() ); for( int ra = 0; ra < 23; ra += 2 ) { - SkyPoint* o = new SkyPoint( ra, 0.0 ); - o->EquatorialToHorizontal( data->lst(), data->geo()->lat() ); + SkyPoint o( ra, 0.0 ); + o.EquatorialToHorizontal( data->lst(), data->geo()->lat() ); bool visible; - cpoint = proj->toScreen( o, false, &visible ); - if ( visible && proj->checkVisibility( o ) ) { - label.setNum( o->ra().hour() ); + QPointF cpoint = proj->toScreen( &o, false, &visible ); + if ( visible && proj->checkVisibility( &o ) ) { + label.setNum( o.ra().hour() ); skyLabeler->drawGuideLabel( cpoint, label, 0.0 ); } }