Hi *,
I'm sending 2 patches removing finally SvULongs from LibreOffice:)
Cheers,
Maciej
From 820bb5c8f68c2cb0219dfa49cacae094c32f62f2 Mon Sep 17 00:00:00 2001
From: Maciej Rumianowski <maciej.rumianowski@gmail.com>
Date: Fri, 30 Sep 2011 15:55:58 +0200
Subject: [PATCH] Finally remove SvULongs
In all places SvULongs have been replaced with std::vector, now can be totally removed.
---
svl/inc/svl/svarray.hxx | 2 +-
svl/inc/svl/svstdarr.hxx | 7 +------
svl/source/memtools/svarray.cxx | 2 --
3 files changed, 2 insertions(+), 9 deletions(-)
diff --git a/svl/inc/svl/svarray.hxx b/svl/inc/svl/svarray.hxx
index 52b35ac..a0db903 100644
--- a/svl/inc/svl/svarray.hxx
+++ b/svl/inc/svl/svarray.hxx
@@ -81,7 +81,7 @@
* Sortierung mit Hilfe der Object-operatoren "<" und "=="
*
* JP 09.10.96: vordefinierte Arrays:
-* VarArr: SvULongs, SvUShorts
+* VarArr: SvUShorts
* PtrArr: SvStrings, SvStringsDtor
* SortArr: SvStringsSort, SvStringsSortDtor,
* SvStringsISort, SvStringsISortDtor
diff --git a/svl/inc/svl/svstdarr.hxx b/svl/inc/svl/svstdarr.hxx
index 2dd5b89..6968cc6 100644
--- a/svl/inc/svl/svstdarr.hxx
+++ b/svl/inc/svl/svstdarr.hxx
@@ -32,7 +32,7 @@
* (die defines setzen sich aus "_SVSTDARR_" und dem Namen des Array
* ohne "Sv" zusammen)
*
-* VarArr: SvULongs, SvUShorts
+* VarArr: SvUShorts
* PtrArr: SvStrings, SvStringsDtor
* SortArr: SvStringsSort, SvStringsSortDtor,
* SvStringsISort, SvStringsISortDtor,
@@ -42,11 +42,6 @@
#include <svl/svarray.hxx>
#include <deque>
-#ifndef _SVSTDARR_ULONGS_DECL
-SV_DECL_VARARR_VISIBILITY( SvULongs, sal_uLong, 1, 1, SVL_DLLPUBLIC )
-#define _SVSTDARR_ULONGS_DECL
-#endif
-
#ifndef _SVSTDARR_USHORTS_DECL
SV_DECL_VARARR_VISIBILITY( SvUShorts, sal_uInt16, 1, 1, SVL_DLLPUBLIC )
#define _SVSTDARR_USHORTS_DECL
diff --git a/svl/source/memtools/svarray.cxx b/svl/source/memtools/svarray.cxx
index bdbadca..88cc111 100644
--- a/svl/source/memtools/svarray.cxx
+++ b/svl/source/memtools/svarray.cxx
@@ -31,7 +31,6 @@
#define _SVARRAY_CXX
-#define _SVSTDARR_ULONGS
#define _SVSTDARR_sal_uInt16S
#define _SVSTDARR_STRINGS
#define _SVSTDARR_STRINGSDTOR
@@ -62,7 +61,6 @@ sal_uInt16 SvPtrarr::GetPos( const VoidPtr& aElement ) const
return ( n >= nA ? USHRT_MAX : n );
}
-SV_IMPL_VARARR( SvULongs, sal_uLong )
SV_IMPL_VARARR( SvUShorts, sal_uInt16 )
SV_IMPL_PTRARR( SvStrings, StringPtr )
--
1.7.4.1
From f24880f4f444f80b4edcad4740240c9119ea7908 Mon Sep 17 00:00:00 2001
From: Maciej Rumianowski <maciej.rumianowski@gmail.com>
Date: Fri, 30 Sep 2011 15:39:11 +0200
Subject: [PATCH] Get rid of SvNums
SvNums is a define for SvUShort and SvULong, both are replaced with std::vector
---
svl/source/items/itemset.cxx | 7 -------
svl/source/items/nranges.cxx | 15 +++++++++------
2 files changed, 9 insertions(+), 13 deletions(-)
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 0dba305..1a479ad 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -32,10 +32,7 @@
#include <string.h>
#include <cstdarg>
-#define _SVSTDARR_USHORTS
-#define _SVSTDARR_ULONGS
-#include <svl/svstdarr.hxx>
#include <svl/itemset.hxx>
#include <svl/itempool.hxx>
#include <svl/itemiter.hxx>
@@ -58,19 +55,15 @@ DBG_NAME(SfxItemSet)
//========================================================================
#define NUMTYPE sal_uInt16
-#define SvNums SvUShorts
#define SfxNumRanges SfxUShortRanges
#include "nranges.cxx"
#undef NUMTYPE
-#undef SvNums
#undef SfxNumRanges
#define NUMTYPE sal_uLong
-#define SvNums SvULongs
#define SfxNumRanges SfxULongRanges
#include "nranges.cxx"
#undef NUMTYPE
-#undef SvNums
#undef SfxNumRanges
//========================================================================
diff --git a/svl/source/items/nranges.cxx b/svl/source/items/nranges.cxx
index 0b8942c..38b9e01 100644
--- a/svl/source/items/nranges.cxx
+++ b/svl/source/items/nranges.cxx
@@ -29,6 +29,7 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_svl.hxx"
+#include <vector>
// compiled via include from itemset.cxx only!
//========================================================================
@@ -75,18 +76,20 @@ NUMTYPE InitializeRanges_Impl( NUMTYPE *&rpRanges, va_list pArgs,
{
NUMTYPE nSize = 0, nIns = 0;
sal_uInt16 nCnt = 0;
- SvNums aNumArr( 11, 8 );
- aNumArr.Insert( nWh1, nCnt++ );
- aNumArr.Insert( nWh2, nCnt++ );
+ std::vector<NUMTYPE> aNumArr;
+ aNumArr.push_back( nWh1 );
+ aNumArr.push_back( nWh2 );
DBG_ASSERT( nWh1 <= nWh2, "Ungueltiger Bereich" );
nSize += nWh2 - nWh1 + 1;
- aNumArr.Insert( nNull, nCnt++ );
+ aNumArr.push_back( nNull );
+ nCnt = aNumArr.size();
while ( 0 !=
( nIns =
sal::static_int_cast< NUMTYPE >(
va_arg( pArgs, NUMTYPE_ARG ) ) ) )
{
- aNumArr.Insert( nIns, nCnt++ );
+ aNumArr.push_back( nIns );
+ ++nCnt;
if ( 0 == (nCnt & 1) ) // 4,6,8, usw.
{
DBG_ASSERT( aNumArr[ nCnt-2 ] <= nIns, "Ungueltiger Bereich" );
@@ -98,7 +101,7 @@ NUMTYPE InitializeRanges_Impl( NUMTYPE *&rpRanges, va_list pArgs,
// so, jetzt sind alle Bereiche vorhanden und
rpRanges = new NUMTYPE[ nCnt+1 ];
- memcpy( rpRanges, aNumArr.GetData(), sizeof(NUMTYPE) * nCnt );
+ std::copy( aNumArr.begin(), aNumArr.begin()+nCnt, rpRanges);
*(rpRanges+nCnt) = 0;
return nSize;
--
1.7.4.1
Context
- [Libreoffice] [PATCH] Remove last instance and Finally remove SvULongs · Maciej Rumianowski
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.