sot/inc/sot/stg.hxx              |    6 +++---
 sot/source/sdstor/stg.cxx        |   14 +++++++-------
 sot/source/sdstor/storage.cxx    |    2 +-
 sot/source/sdstor/ucbstorage.cxx |    4 ++--
 4 files changed, 13 insertions(+), 13 deletions(-)

New commits:
commit b36612d4a34e4ab131c904a9e35ab3e2bded76f5
Author: Caolán McNamara <caol...@redhat.com>
Date:   Thu May 3 12:22:29 2012 +0100

    Fix sot stream bustage
    
    We want the Tell position of the wrapper stream, not that of the underlying
    wrapped stream.
    
    Change-Id: I5d30192dbc3746104ca2127d9a747ef70b85a136

diff --git a/sot/inc/sot/stg.hxx b/sot/inc/sot/stg.hxx
index ab567f3..d716995 100644
--- a/sot/inc/sot/stg.hxx
+++ b/sot/inc/sot/stg.hxx
@@ -90,11 +90,11 @@ public:
     virtual sal_uLong   Tell() = 0;
     virtual void    Flush() = 0;
     virtual sal_Bool    SetSize( sal_uLong nNewSize ) = 0;
+    virtual sal_uLong   GetSize() const = 0;
     virtual sal_Bool    CopyTo( BaseStorageStream * pDestStm ) = 0;
     virtual sal_Bool    Commit() = 0;
     virtual sal_Bool    Revert() = 0;
     virtual sal_Bool    Equals( const BaseStorageStream& rStream ) const = 0;
-    virtual sal_Size    remainingSize() = 0;
 };
 
 class BaseStorage : public StorageBase
@@ -172,6 +172,7 @@ public:
     virtual sal_uLong   Tell() { return nPos; }
     virtual void    Flush();
     virtual sal_Bool    SetSize( sal_uLong nNewSize );
+    virtual sal_uLong   GetSize() const;
     virtual sal_Bool    CopyTo( BaseStorageStream * pDestStm );
     virtual sal_Bool    Commit();
     virtual sal_Bool    Revert();
@@ -179,7 +180,6 @@ public:
     virtual sal_Bool    ValidateMode( StreamMode ) const;
     const SvStream* GetSvStream() const;
     virtual sal_Bool    Equals( const BaseStorageStream& rStream ) const;
-    virtual sal_Size    remainingSize();
 };
 
 class UCBStorageStream;
@@ -267,12 +267,12 @@ public:
     virtual sal_uLong               Tell();
     virtual void                Flush();
     virtual sal_Bool                SetSize( sal_uLong nNewSize );
+    virtual sal_uLong               GetSize() const;
     virtual sal_Bool                CopyTo( BaseStorageStream * pDestStm );
     virtual sal_Bool                Commit();
     virtual sal_Bool                Revert();
     virtual sal_Bool                Validate( sal_Bool=sal_False ) const;
     virtual sal_Bool                ValidateMode( StreamMode ) const;
-    virtual sal_Size                remainingSize();
     const SvStream*             GetSvStream() const;
     virtual sal_Bool                Equals( const BaseStorageStream& rStream ) 
const;
     sal_Bool                        SetProperty( const String& rName, const 
::com::sun::star::uno::Any& rValue );
diff --git a/sot/source/sdstor/stg.cxx b/sot/source/sdstor/stg.cxx
index 4f4e991..1f8b5bd 100644
--- a/sot/source/sdstor/stg.cxx
+++ b/sot/source/sdstor/stg.cxx
@@ -234,13 +234,6 @@ sal_uLong StorageStream::Seek( sal_uLong n )
         return n;
 }
 
-sal_Size StorageStream::remainingSize()
-{
-    if( Validate() )
-        return pEntry->GetSize() - Tell();
-    return 0;
-}
-
 void StorageStream::Flush()
 {
     // Flushing means committing, since streams are never transacted
@@ -259,6 +252,13 @@ sal_Bool StorageStream::SetSize( sal_uLong nNewSize )
         return sal_False;
 }
 
+sal_uLong StorageStream::GetSize() const
+{
+    if( Validate() )
+        return pEntry->GetSize();
+    return 0;
+}
+
 sal_Bool StorageStream::Commit()
 {
     if( !Validate() )
diff --git a/sot/source/sdstor/storage.cxx b/sot/source/sdstor/storage.cxx
index 67b270f..c4120bd 100644
--- a/sot/source/sdstor/storage.cxx
+++ b/sot/source/sdstor/storage.cxx
@@ -289,7 +289,7 @@ sal_uInt32 SotStorageStream::GetSize() const
 sal_Size SotStorageStream::remainingSize()
 {
     if (pOwnStm)
-        return pOwnStm->remainingSize();
+        return pOwnStm->GetSize() - Tell();
     return SvStream::remainingSize();
 }
 
diff --git a/sot/source/sdstor/ucbstorage.cxx b/sot/source/sdstor/ucbstorage.cxx
index 2a1a000..fd5761a 100644
--- a/sot/source/sdstor/ucbstorage.cxx
+++ b/sot/source/sdstor/ucbstorage.cxx
@@ -1554,9 +1554,9 @@ sal_Bool UCBStorageStream::GetProperty( const String& 
rName, ::com::sun::star::u
     return sal_False;
 }
 
-sal_Size UCBStorageStream::remainingSize()
+sal_uLong UCBStorageStream::GetSize() const
 {
-    return pImp->GetSize() - Tell();
+    return pImp->GetSize();
 }
 
 UCBStorage::UCBStorage( SvStream& rStrm, sal_Bool bDirect )
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to