summaryrefslogtreecommitdiff
path: root/comphelper
diff options
context:
space:
mode:
authorMike Kaganski <mike.kaganski@collabora.com>2023-01-13 10:54:49 +0300
committerMike Kaganski <mike.kaganski@collabora.com>2023-01-13 09:22:34 +0000
commit3de6b42235aa25f621ae293ad6bad1ee03298358 (patch)
tree55541bdb366225939aba70ea68bf34a3081c867f /comphelper
parent8bdd832d2088af4f81402e2c0cb2ee36788238da (diff)
Simplify a bit
Change-Id: Ie2435701078b0e111c1b04b77c857fd1923f2d59 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/145430 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'comphelper')
-rw-r--r--comphelper/source/misc/storagehelper.cxx48
1 files changed, 20 insertions, 28 deletions
diff --git a/comphelper/source/misc/storagehelper.cxx b/comphelper/source/misc/storagehelper.cxx
index 7b41eafbf9f1..3fdabfcfe430 100644
--- a/comphelper/source/misc/storagehelper.cxx
+++ b/comphelper/source/misc/storagehelper.cxx
@@ -175,40 +175,32 @@ void OStorageHelper::CopyInputToOutput(
{
static const sal_Int32 nConstBufferSize = 32000;
- comphelper::ByteReader* pByteReader = dynamic_cast< comphelper::ByteReader* >( xInput.get() );
- comphelper::ByteWriter* pByteWriter = nullptr;
- if (pByteReader)
- pByteWriter = dynamic_cast< comphelper::ByteWriter* >( xOutput.get() );
-
- if (pByteWriter)
- {
- sal_Int32 nRead;
- sal_Int8 aTempBuf[ nConstBufferSize ];
- do
- {
- nRead = pByteReader->readSomeBytes ( aTempBuf, nConstBufferSize );
- pByteWriter->writeBytes ( aTempBuf, nRead );
- }
- while ( nRead == nConstBufferSize );
- }
- else
+ if (auto pByteReader = dynamic_cast< comphelper::ByteReader* >( xInput.get() ))
{
- sal_Int32 nRead;
- uno::Sequence < sal_Int8 > aSequence ( nConstBufferSize );
-
- do
+ if (auto pByteWriter = dynamic_cast< comphelper::ByteWriter* >( xOutput.get() ))
{
- nRead = xInput->readBytes ( aSequence, nConstBufferSize );
- if ( nRead < nConstBufferSize )
+ sal_Int32 nRead;
+ sal_Int8 aTempBuf[ nConstBufferSize ];
+ do
{
- uno::Sequence < sal_Int8 > aTempBuf ( aSequence.getConstArray(), nRead );
- xOutput->writeBytes ( aTempBuf );
+ nRead = pByteReader->readSomeBytes ( aTempBuf, nConstBufferSize );
+ pByteWriter->writeBytes ( aTempBuf, nRead );
}
- else
- xOutput->writeBytes ( aSequence );
+ while ( nRead == nConstBufferSize );
+ return;
}
- while ( nRead == nConstBufferSize );
}
+
+ sal_Int32 nRead;
+ uno::Sequence < sal_Int8 > aSequence ( nConstBufferSize );
+ do
+ {
+ nRead = xInput->readBytes ( aSequence, nConstBufferSize );
+ if ( nRead < nConstBufferSize )
+ aSequence.realloc( nRead );
+ xOutput->writeBytes ( aSequence );
+ }
+ while ( nRead == nConstBufferSize );
}