[Libreoffice-commits] core.git: svx/source
Stephan Bergmann
sbergman at redhat.com
Thu Apr 9 06:34:39 PDT 2015
svx/source/items/clipfmtitem.cxx | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
New commits:
commit 2355a3458598f62c78301d503fdab24010c58f09
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Thu Apr 9 15:20:53 2015 +0200
Just use a plain std::vector<OUString>
Nothing obvious that would speak against converting from the original
SvStringsDtor to plain std::vector<...> instead of slavishly sticking to
boost::ptr_vector<boost::nullable<...>>. Also, prevents a false -fsanitize=null
warning about "reference binding to null pointer of type 'rtl::OUString'" in
boost::void_ptr_iterator<...>::operator*() during ~SvxClipboardFmtItem_Impl().
Change-Id: I08d8fc573ff99a5bddd67c0d2be4e7ea38025958
diff --git a/svx/source/items/clipfmtitem.cxx b/svx/source/items/clipfmtitem.cxx
index bc9362f..eafce453 100644
--- a/svx/source/items/clipfmtitem.cxx
+++ b/svx/source/items/clipfmtitem.cxx
@@ -17,14 +17,16 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <sal/config.h>
+
+#include <vector>
+
#include <svx/clipfmtitem.hxx>
#include <com/sun/star/frame/status/ClipboardFormats.hpp>
-#include <boost/ptr_container/ptr_vector.hpp>
-
struct SvxClipboardFmtItem_Impl
{
- boost::ptr_vector< boost::nullable<OUString> > aFmtNms;
+ std::vector<OUString> aFmtNms;
std::vector<SotClipboardFormatId> aFmtIds;
SvxClipboardFmtItem_Impl() {}
@@ -102,8 +104,7 @@ bool SvxClipboardFmtItem::operator==( const SfxPoolItem& rComp ) const
for( sal_uInt16 n = 0, nEnd = rCmp.pImpl->aFmtNms.size(); n < nEnd; ++n )
{
if( pImpl->aFmtIds[ n ] != rCmp.pImpl->aFmtIds[ n ] ||
- ( pImpl->aFmtNms.is_null(n) != rCmp.pImpl->aFmtNms.is_null(n) ) ||
- ( !pImpl->aFmtNms.is_null(n) && pImpl->aFmtNms[n] != rCmp.pImpl->aFmtNms[n] ) )
+ pImpl->aFmtNms[n] != rCmp.pImpl->aFmtNms[n] )
{
nRet = 0;
break;
@@ -123,7 +124,7 @@ void SvxClipboardFmtItem::AddClipbrdFormat( SotClipboardFormatId nId, sal_uInt16
if( nPos > pImpl->aFmtNms.size() )
nPos = pImpl->aFmtNms.size();
- pImpl->aFmtNms.insert(pImpl->aFmtNms.begin() + nPos, 0);
+ pImpl->aFmtNms.insert(pImpl->aFmtNms.begin() + nPos, OUString());
pImpl->aFmtIds.insert( pImpl->aFmtIds.begin()+nPos, nId );
}
@@ -133,7 +134,7 @@ void SvxClipboardFmtItem::AddClipbrdFormat( SotClipboardFormatId nId, const OUSt
if( nPos > pImpl->aFmtNms.size() )
nPos = pImpl->aFmtNms.size();
- pImpl->aFmtNms.insert(pImpl->aFmtNms.begin() + nPos, new OUString(rName));
+ pImpl->aFmtNms.insert(pImpl->aFmtNms.begin() + nPos, rName);
pImpl->aFmtIds.insert( pImpl->aFmtIds.begin()+nPos, nId );
}
@@ -149,7 +150,7 @@ SotClipboardFormatId SvxClipboardFmtItem::GetClipbrdFormatId( sal_uInt16 nPos )
const OUString SvxClipboardFmtItem::GetClipbrdFormatName( sal_uInt16 nPos ) const
{
- return pImpl->aFmtNms.is_null(nPos) ? OUString() : pImpl->aFmtNms[nPos];
+ return pImpl->aFmtNms[nPos];
}
More information about the Libreoffice-commits
mailing list