connectivity/source/drivers/dbase/DTable.cxx |    7 +++++++
 svl/source/fsstor/fsstorage.cxx              |    2 +-
 xmloff/source/draw/shapeexport.cxx           |    6 +++---
 3 files changed, 11 insertions(+), 4 deletions(-)

New commits:
commit efcbc6ba1952314d44efbfbe4c63de4428e593a9
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Sat Jul 13 21:03:19 2024 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Mon Jul 15 11:56:14 2024 +0200

    cid#1608181 Double lock
    
    Change-Id: Id6121213f11c4ce0c855a0937fd2d7c81946c076
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170446
    Tested-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    (cherry picked from commit 2f3d6cf4d8d6a6aa48bf5d080451214360c9a81c)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170469
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>
    Tested-by: Jenkins

diff --git a/svl/source/fsstor/fsstorage.cxx b/svl/source/fsstor/fsstorage.cxx
index 74895d153536..95f498b71ce2 100644
--- a/svl/source/fsstor/fsstorage.cxx
+++ b/svl/source/fsstor/fsstorage.cxx
@@ -546,7 +546,7 @@ void SAL_CALL FSStorage::copyStorageElementLastCommitTo(
 {
     std::unique_lock aGuard( m_aMutex );
 
-    uno::Reference< embed::XStorage > xSourceStor( openStorageElement( 
aStorName, embed::ElementModes::READ ),
+    uno::Reference< embed::XStorage > xSourceStor( 
openStorageElementImpl(aGuard, aStorName, embed::ElementModes::READ),
                                                     uno::UNO_SET_THROW );
     xSourceStor->copyToStorage( xTargetStorage );
 }
commit 1be3860fd9877ea62bfae965f24da52b4c2f26e5
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Sat Jul 13 20:05:08 2024 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Mon Jul 15 11:56:10 2024 +0200

    cid#1608516 Overflowed constant
    
    Change-Id: I0d494f512a45e93933fdb03f64238f12ed2570a2
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170440
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Tested-by: Jenkins
    (cherry picked from commit 524ec386b2438fbcda42a1264ad372285a91be7f)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170471
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/connectivity/source/drivers/dbase/DTable.cxx 
b/connectivity/source/drivers/dbase/DTable.cxx
index 22caafc43fc6..cd42c6d8fa42 100644
--- a/connectivity/source/drivers/dbase/DTable.cxx
+++ b/connectivity/source/drivers/dbase/DTable.cxx
@@ -2683,7 +2683,14 @@ bool ODbaseTable::ReadMemo(std::size_t nBlockNo, 
ORowSetValue& aVariable)
             (*m_pMemoStream).ReadUInt32( nLength );
 
             if (m_aMemoHeader.db_typ == MemodBaseIV)
+            {
+                if (nLength < 8)
+                {
+                    SAL_WARN("connectivity.drivers", "Size too small");
+                    return false;
+                }
                 nLength -= 8;
+            }
 
             if ( nLength )
             {
commit 8ddb1cf50e3e981fd1863dae4c56b97919fae22c
Author:     Caolán McNamara <caolan.mcnam...@collabora.com>
AuthorDate: Sat Jul 13 19:54:29 2024 +0100
Commit:     Xisco Fauli <xiscofa...@libreoffice.org>
CommitDate: Mon Jul 15 11:56:02 2024 +0200

    cid#1608584 Overflowed constant
    
    Change-Id: Ieefa43899f84938ba12227b30a2c9b273ac2c202
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170437
    Tested-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    (cherry picked from commit b904816f7375ef63c6c86578bed58f8dc06b6125)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170470
    Tested-by: Jenkins
    Reviewed-by: Xisco Fauli <xiscofa...@libreoffice.org>

diff --git a/xmloff/source/draw/shapeexport.cxx 
b/xmloff/source/draw/shapeexport.cxx
index 9463b3e64eb8..65709b7bfba3 100644
--- a/xmloff/source/draw/shapeexport.cxx
+++ b/xmloff/source/draw/shapeexport.cxx
@@ -2416,9 +2416,9 @@ OUString getNameFromStreamURL(std::u16string_view rURL)
     if (o3tl::starts_with(rURL, sPackageURL))
     {
         std::u16string_view sRequestedName = rURL.substr(sPackageURL.size());
-        size_t nLastIndex = sRequestedName.rfind('/') + 1;
-        if ((nLastIndex > 0) && (nLastIndex < sRequestedName.size()))
-            sRequestedName = sRequestedName.substr(nLastIndex);
+        size_t nLastIndex = sRequestedName.rfind('/');
+        if (nLastIndex != std::u16string_view::npos && nLastIndex + 1 < 
sRequestedName.size())
+            sRequestedName = sRequestedName.substr(nLastIndex + 1);
         nLastIndex = sRequestedName.rfind('.');
         if (nLastIndex != std::u16string_view::npos)
             sRequestedName = sRequestedName.substr(0, nLastIndex);

Reply via email to