diff options
-rw-r--r-- | sfx2/source/appl/appdde.cxx | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sfx2/source/appl/appdde.cxx b/sfx2/source/appl/appdde.cxx index 98a7c5e8b3f0..e6d370670091 100644 --- a/sfx2/source/appl/appdde.cxx +++ b/sfx2/source/appl/appdde.cxx @@ -236,8 +236,7 @@ public: }; -SV_DECL_PTRARR( SfxDdeDocTopics_Impl, SfxDdeDocTopic_Impl *, 4 ) -SV_IMPL_PTRARR( SfxDdeDocTopics_Impl, SfxDdeDocTopic_Impl *) +class SfxDdeDocTopics_Impl : public std::vector<SfxDdeDocTopic_Impl*> {}; //======================================================================== @@ -607,11 +606,12 @@ void SfxApplication::RemoveDdeTopic( SfxObjectShell* pSh ) return; SfxDdeDocTopic_Impl* pTopic; - for( sal_uInt16 n = pAppData_Impl->pDocTopics->Count(); n; ) + for( sal_uInt16 n = pAppData_Impl->pDocTopics->size(); n; ) if( ( pTopic = (*pAppData_Impl->pDocTopics)[ --n ])->pSh == pSh ) { pAppData_Impl->pDdeService->RemoveTopic( *pTopic ); - pAppData_Impl->pDocTopics->DeleteAndDestroy( n ); + delete pTopic; + pAppData_Impl->pDocTopics->erase( pAppData_Impl->pDocTopics->begin() + n ); } } |