summaryrefslogtreecommitdiff
path: root/svl/source/items/itemset.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svl/source/items/itemset.cxx')
-rw-r--r--svl/source/items/itemset.cxx5
1 files changed, 3 insertions, 2 deletions
diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index cf15b267b5a9..33ed2d49b03e 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -737,7 +737,8 @@ void SfxItemSet::MergeRange( sal_uInt16 nFrom, sal_uInt16 nTo )
{
// special case: exactly one sal_uInt16 which is already included?
- if ( nFrom == nTo && SFX_ITEM_AVAILABLE <= GetItemState(nFrom, false) )
+ SfxItemState eItemState = GetItemState(nFrom, false);
+ if ( nFrom == nTo && ( eItemState == SFX_ITEM_DEFAULT || eItemState == SFX_ITEM_SET ) )
return;
// merge new range
@@ -1096,7 +1097,7 @@ void SfxItemSet::Intersect( const SfxItemSet& rSet )
sal_uInt16 nWhich = IsInvalidItem( pItem )
? GetWhichByPos( aIter.GetCurPos() )
: pItem->Which();
- if( 0 == rSet.GetItemState( nWhich, false ) )
+ if( SFX_ITEM_UNKNOWN == rSet.GetItemState( nWhich, false ) )
ClearItem( nWhich ); // loeschen
if( aIter.IsAtEnd() )
break;