[Libreoffice-commits] core.git: svtools/inc svtools/source
Noel Grandin
noel at peralex.com
Fri Oct 3 06:19:24 PDT 2014
svtools/inc/roadmap.hxx | 2 +-
svtools/source/control/roadmap.cxx | 18 +++++++-----------
2 files changed, 8 insertions(+), 12 deletions(-)
New commits:
commit 11d22e164ec5e62e067a38ce11929b157381d1b7
Author: Noel Grandin <noel at peralex.com>
Date: Fri Oct 3 15:17:43 2014 +0200
cid#1194925 Resource leak
reorganise the code to keep coverity happy
Change-Id: I18fc2dfd17f97edf1d17c57caaed4cc9d2fedd13
diff --git a/svtools/inc/roadmap.hxx b/svtools/inc/roadmap.hxx
index c1f8e46..362f797 100644
--- a/svtools/inc/roadmap.hxx
+++ b/svtools/inc/roadmap.hxx
@@ -110,7 +110,7 @@ namespace svt
ItemId GetNextAvailableItemId( ItemIndex _NewIndex );
ItemId GetPreviousAvailableItemId( ItemIndex _NewIndex );
RoadmapItem* GetByPointer(vcl::Window* pWindow);
- RoadmapItem* InsertHyperLabel( ItemIndex _Index, const OUString& _aStr, ItemId _RMID, bool _bEnabled = true );
+ RoadmapItem* InsertHyperLabel( ItemIndex _Index, const OUString& _aStr, ItemId _RMID, bool _bEnabled, bool _bIncomplete );
void UpdatefollowingHyperLabels( ItemIndex _Index );
};
diff --git a/svtools/source/control/roadmap.cxx b/svtools/source/control/roadmap.cxx
index 58f3d06..ce70900 100644
--- a/svtools/source/control/roadmap.cxx
+++ b/svtools/source/control/roadmap.cxx
@@ -30,7 +30,6 @@
#define ROADMAP_INDENT_X 4
#define ROADMAP_INDENT_Y 27
#define ROADMAP_ITEM_DISTANCE_Y 6
-#define RMINCOMPLETE -1
namespace svt
@@ -235,7 +234,7 @@ namespace svt
- RoadmapItem* ORoadmap::InsertHyperLabel( ItemIndex _Index, const OUString& _sLabel, ItemId _RMID, bool _bEnabled)
+ RoadmapItem* ORoadmap::InsertHyperLabel( ItemIndex _Index, const OUString& _sLabel, ItemId _RMID, bool _bEnabled, bool _bIncomplete)
{
if ( m_pImpl->getItemCount() == 0 )
m_pImpl->initItemSize();
@@ -244,14 +243,14 @@ namespace svt
RoadmapItem* pOldItem = GetPreviousHyperLabel( _Index );
pItem = new RoadmapItem( *this, m_pImpl->getItemSize() );
- if ( _RMID != RMINCOMPLETE )
+ if ( _bIncomplete )
{
- pItem->SetInteractive( m_pImpl->isInteractive() );
- m_pImpl->insertHyperLabel( _Index, pItem );
+ pItem->SetInteractive( false );
}
else
{
- pItem->SetInteractive( false );
+ pItem->SetInteractive( m_pImpl->isInteractive() );
+ m_pImpl->insertHyperLabel( _Index, pItem );
}
pItem->SetPosition( pOldItem );
pItem->Update( _Index, _sLabel );
@@ -306,7 +305,7 @@ namespace svt
}
}
else if ( bWasComplete )
- m_pImpl->InCompleteHyperLabel = InsertHyperLabel( m_pImpl->getItemCount(), OUString("..."), RMINCOMPLETE );
+ m_pImpl->InCompleteHyperLabel = InsertHyperLabel( m_pImpl->getItemCount(), OUString("..."), -1, true/*bEnabled*/, true/*bIncomplete*/ );
}
@@ -365,10 +364,7 @@ namespace svt
void ORoadmap::InsertRoadmapItem( ItemIndex _Index, const OUString& _RoadmapItem, ItemId _nUniqueId, bool _bEnabled )
{
- // make coverity happy, because then it knows the return value from InsertHyperLabel won't leak
- assert( _nUniqueId != RMINCOMPLETE );
-
- InsertHyperLabel( _Index, _RoadmapItem, _nUniqueId, _bEnabled );
+ InsertHyperLabel( _Index, _RoadmapItem, _nUniqueId, _bEnabled, false/*bIncomplete*/ );
// TODO YPos is superfluous, if items are always appended
UpdatefollowingHyperLabels( _Index + 1 );
}
More information about the Libreoffice-commits
mailing list