svl/source/items/itemset.cxx |   18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

New commits:
commit 46bd13a55492adef4bf95133d7123494a62f549a
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Sat Apr 13 20:42:16 2024 +0100
Commit:     Eike Rathke <er...@redhat.com>
CommitDate: Mon May 6 15:11:12 2024 +0200

    Related: tdf#160056 1 entry is more common than no entries
    
    Change-Id: I78fe8969120f894cf5c0a71fb61611af2d203d18
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166065
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    (cherry picked from commit 7f2283c2986ff94766cc1d2c076fb34a2c88a31a)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166302
    Reviewed-by: Eike Rathke <er...@redhat.com>

diff --git a/svl/source/items/itemset.cxx b/svl/source/items/itemset.cxx
index 66780cb581cb..fd9cbb1dddee 100644
--- a/svl/source/items/itemset.cxx
+++ b/svl/source/items/itemset.cxx
@@ -1891,11 +1891,8 @@ static void isMiss()
 
 sal_uInt16 WhichRangesContainer::getOffsetFromWhich(sal_uInt16 nWhich) const
 {
-    if (empty())
-        return INVALID_WHICHPAIR_OFFSET;
-
     // special case for single entry - happens often e.g. UI stuff
-    if (1 == m_size)
+    if (m_size == 1)
     {
         if( m_pairs->first <= nWhich && nWhich <= m_pairs->second )
             return nWhich - m_pairs->first;
@@ -1904,6 +1901,9 @@ sal_uInt16 
WhichRangesContainer::getOffsetFromWhich(sal_uInt16 nWhich) const
         return INVALID_WHICHPAIR_OFFSET;
     }
 
+    if (m_size == 0)
+        return INVALID_WHICHPAIR_OFFSET;
+
     // check if nWhich is inside last successfully used WhichPair
     if (INVALID_WHICHPAIR_OFFSET != m_aLastWhichPairOffset
         && m_aLastWhichPairFirst <= nWhich
@@ -1949,12 +1949,8 @@ sal_uInt16 
WhichRangesContainer::getOffsetFromWhich(sal_uInt16 nWhich) const
 
 sal_uInt16 WhichRangesContainer::getWhichFromOffset(sal_uInt16 nOffset) const
 {
-    // check for empty, if yes, return null which is an invalid WhichID
-    if (empty())
-        return 0;
-
     // special case for single entry - happens often e.g. UI stuff
-    if (1 == m_size)
+    if (m_size == 1)
     {
         if (nOffset <= m_pairs->second - m_pairs->first)
             return m_pairs->first + nOffset;
@@ -1963,6 +1959,10 @@ sal_uInt16 
WhichRangesContainer::getWhichFromOffset(sal_uInt16 nOffset) const
         return 0;
     }
 
+    // check for empty, if yes, return null which is an invalid WhichID
+    if (m_size == 0)
+        return 0;
+
     // check if nWhich is inside last successfully used WhichPair
     if (INVALID_WHICHPAIR_OFFSET != m_aLastWhichPairOffset)
     {

Reply via email to