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.rumianow...@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.rumianow...@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
_______________________________________________ LibreOffice mailing list LibreOffice@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice