diff options
author | Martin Gallwey <mtg@openoffice.org> | 2000-12-13 16:00:47 +0000 |
---|---|---|
committer | Martin Gallwey <mtg@openoffice.org> | 2000-12-13 16:00:47 +0000 |
commit | 4b11504f4ad039fb2311061c7544f00b6ff23c0f (patch) | |
tree | 77bd71291871a03a9a5e577114914fc4f5cfbbe0 /package/inc/ZipPackageBuffer.hxx | |
parent | d6a8a2916c2c00f702b68d427af75d83e2163eb6 (diff) |
This rather enormous commit has the following features:
1. Fixed three different memory leaks, one of them quite serious
2. Considerably streamlined the ZipPackageBuffer class - large performance
increase, also streamlined EntryInputClass in the same way...
3. Correctly saves embedded zip files as embedded zip files instead of
directories
4. Supports the copying of raw streams instead of de-compressing/re-
compressing unnecessarily.
Marty
Diffstat (limited to 'package/inc/ZipPackageBuffer.hxx')
-rw-r--r-- | package/inc/ZipPackageBuffer.hxx | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/package/inc/ZipPackageBuffer.hxx b/package/inc/ZipPackageBuffer.hxx index 6c458ba51aa1..93e5bd61db61 100644 --- a/package/inc/ZipPackageBuffer.hxx +++ b/package/inc/ZipPackageBuffer.hxx @@ -2,9 +2,9 @@ * * $RCSfile: ZipPackageBuffer.hxx,v $ * - * $Revision: 1.4 $ + * $Revision: 1.5 $ * - * last change: $Author: mtg $ $Date: 2000-11-27 16:51:45 $ + * last change: $Author: mtg $ $Date: 2000-12-13 17:00:36 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -81,6 +81,8 @@ #include <cppuhelper/weak.hxx> #endif +#include <memory.h> // for memcpy + class ZipPackageBuffer : public com::sun::star::io::XInputStream, public com::sun::star::io::XOutputStream, @@ -101,6 +103,7 @@ public: throw(); virtual void SAL_CALL release(void) throw(); + // XInputStream virtual sal_Int32 SAL_CALL readBytes( ::com::sun::star::uno::Sequence< sal_Int8 >& aData, sal_Int32 nBytesToRead ) throw(::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); virtual sal_Int32 SAL_CALL readSomeBytes( ::com::sun::star::uno::Sequence< sal_Int8 >& aData, sal_Int32 nMaxBytesToRead ) @@ -111,12 +114,14 @@ public: throw(::com::sun::star::io::NotConnectedException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); virtual void SAL_CALL closeInput( ) throw(::com::sun::star::io::NotConnectedException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); + // XOutputStream virtual void SAL_CALL writeBytes( const ::com::sun::star::uno::Sequence< sal_Int8 >& aData ) throw(::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); virtual void SAL_CALL flush( ) throw(::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); virtual void SAL_CALL closeOutput( ) throw(::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); + // XSeekable virtual void SAL_CALL seek( sal_Int64 location ) throw(::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException); virtual sal_Int64 SAL_CALL getPosition( ) |