Kaydet (Commit) 11d22e16 authored tarafından Noel Grandin's avatar Noel Grandin

cid#1194925 Resource leak

reorganise the code to keep coverity happy

Change-Id: I18fc2dfd17f97edf1d17c57caaed4cc9d2fedd13
üst 8717cbc9
...@@ -110,7 +110,7 @@ namespace svt ...@@ -110,7 +110,7 @@ namespace svt
ItemId GetNextAvailableItemId( ItemIndex _NewIndex ); ItemId GetNextAvailableItemId( ItemIndex _NewIndex );
ItemId GetPreviousAvailableItemId( ItemIndex _NewIndex ); ItemId GetPreviousAvailableItemId( ItemIndex _NewIndex );
RoadmapItem* GetByPointer(vcl::Window* pWindow); 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 ); void UpdatefollowingHyperLabels( ItemIndex _Index );
}; };
......
...@@ -30,7 +30,6 @@ ...@@ -30,7 +30,6 @@
#define ROADMAP_INDENT_X 4 #define ROADMAP_INDENT_X 4
#define ROADMAP_INDENT_Y 27 #define ROADMAP_INDENT_Y 27
#define ROADMAP_ITEM_DISTANCE_Y 6 #define ROADMAP_ITEM_DISTANCE_Y 6
#define RMINCOMPLETE -1
namespace svt namespace svt
...@@ -235,7 +234,7 @@ 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 ) if ( m_pImpl->getItemCount() == 0 )
m_pImpl->initItemSize(); m_pImpl->initItemSize();
...@@ -244,14 +243,14 @@ namespace svt ...@@ -244,14 +243,14 @@ namespace svt
RoadmapItem* pOldItem = GetPreviousHyperLabel( _Index ); RoadmapItem* pOldItem = GetPreviousHyperLabel( _Index );
pItem = new RoadmapItem( *this, m_pImpl->getItemSize() ); pItem = new RoadmapItem( *this, m_pImpl->getItemSize() );
if ( _RMID != RMINCOMPLETE ) if ( _bIncomplete )
{ {
pItem->SetInteractive( m_pImpl->isInteractive() ); pItem->SetInteractive( false );
m_pImpl->insertHyperLabel( _Index, pItem );
} }
else else
{ {
pItem->SetInteractive( false ); pItem->SetInteractive( m_pImpl->isInteractive() );
m_pImpl->insertHyperLabel( _Index, pItem );
} }
pItem->SetPosition( pOldItem ); pItem->SetPosition( pOldItem );
pItem->Update( _Index, _sLabel ); pItem->Update( _Index, _sLabel );
...@@ -306,7 +305,7 @@ namespace svt ...@@ -306,7 +305,7 @@ namespace svt
} }
} }
else if ( bWasComplete ) 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 ...@@ -365,10 +364,7 @@ namespace svt
void ORoadmap::InsertRoadmapItem( ItemIndex _Index, const OUString& _RoadmapItem, ItemId _nUniqueId, bool _bEnabled ) 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 InsertHyperLabel( _Index, _RoadmapItem, _nUniqueId, _bEnabled, false/*bIncomplete*/ );
assert( _nUniqueId != RMINCOMPLETE );
InsertHyperLabel( _Index, _RoadmapItem, _nUniqueId, _bEnabled );
// TODO YPos is superfluous, if items are always appended // TODO YPos is superfluous, if items are always appended
UpdatefollowingHyperLabels( _Index + 1 ); UpdatefollowingHyperLabels( _Index + 1 );
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment