[Libreoffice-commits] core.git: sc/source
Noel Grandin (via logerrit)
logerrit at kemper.freedesktop.org
Mon Jun 3 13:25:13 UTC 2019
sc/source/filter/orcus/filterdetect.cxx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit 7bf2515fc48ed0d4c436aef298fa9c35e573352b
Author: Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Mon Jun 3 10:04:58 2019 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Mon Jun 3 15:24:14 2019 +0200
tdf#67538 XTypeDetection::queryTypeByDescriptor poor performance, part3
Size the OUStringBuffer in OrcusFormatDetect::detect better at
construction, to avoid re-alloc.
This is specifically fixing the performance of queryTypeByDescriptor
when called from a basic macro on a local test file.
This takes my test macro from 9s to 8s
Change-Id: Id4c2bf386de172b1deed98efece8c1f040c599a5
Reviewed-on: https://gerrit.libreoffice.org/73376
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/sc/source/filter/orcus/filterdetect.cxx b/sc/source/filter/orcus/filterdetect.cxx
index a9b064b01fbb..fb142d86b579 100644
--- a/sc/source/filter/orcus/filterdetect.cxx
+++ b/sc/source/filter/orcus/filterdetect.cxx
@@ -68,11 +68,11 @@ OUString OrcusFormatDetect::detect(css::uno::Sequence<css::beans::PropertyValue>
return OUString();
css::uno::Reference<css::io::XInputStream> xInputStream(aMediaDescriptor[utl::MediaDescriptor::PROP_INPUTSTREAM()], css::uno::UNO_QUERY );
+ OStringBuffer aContent(xInputStream->available());
static const sal_Int32 nBytes = 4096;
css::uno::Sequence<sal_Int8> aSeq(nBytes);
bool bEnd = false;
- OStringBuffer aContent;
while(!bEnd)
{
sal_Int32 nReadBytes = xInputStream->readBytes(aSeq, nBytes);
More information about the Libreoffice-commits
mailing list