Kaydet (Commit) 7bf2515f authored tarafından Noel Grandin's avatar Noel Grandin

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: 's avatarNoel Grandin <noel.grandin@collabora.co.uk>
üst 0d04315c
......@@ -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);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment