Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/2669
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/69/2669/1
rhbz#915743: Avoid potentially blocking autocompletion for non file URLs
In theory, the logic of how SvtMatchContext_Impl threads are used to obtain
autocompletion information could probably be improved so that long-latency
scenarios would only block the ultimate closing of the dialog, if anything at
all. In practice, this is probably not worth it, as users likely do not expect
an autocompletion feature for remote content, anyway. (And previous commits
like 260afe56fd6b2f34de8290f3cdb7d1df5b88f8a8 "neon commands cannot be aborted"
make it questionable whether any remaining blocking upon closing of the dialog
could be bounded in a reasonable manner.)
Change-Id: Ie82b9a70285b30fe88cf4c40992710087e86815e
(cherry picked from commit c6dfb3825cad9c8f6f87f4afc8fdbc386919e640)
---
M svtools/source/control/inettbc.cxx
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/svtools/source/control/inettbc.cxx b/svtools/source/control/inettbc.cxx
index 6c0ce2a..706a8f7 100644
--- a/svtools/source/control/inettbc.cxx
+++ b/svtools/source/control/inettbc.cxx
@@ -584,7 +584,14 @@
{
INetURLObject aURLObject( aMatch );
String aMainURL( aURLObject.GetMainURL( INetURLObject::NO_DECODE ) );
- if ( aMainURL.Len() )
+ // Disable autocompletion for anything but the (local) file
+ // system (for which access is hopefully fast), as the logic of
+ // how SvtMatchContext_Impl is used requires this code to run to
+ // completion before further user input is processed, and even
+ // SvtMatchContext_Impl::Stop does not guarantee a speedy
+ // return:
+ if ( aMainURL.Len()
+ && aURLObject.GetProtocol() == INET_PROT_FILE )
{
// if text input is a directory, it must be part of the match list! Until then
it is scanned
if ( UCBContentHelper::IsFolder( aMainURL ) && aURLObject.hasFinalSlash() )
--
To view, visit https://gerrit.libreoffice.org/2669
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie82b9a70285b30fe88cf4c40992710087e86815e
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: libreoffice-4-0
Gerrit-Owner: Stephan Bergmann <sbergman@redhat.com>
Context
- [PATCH libreoffice-4-0] rhbz#915743: Avoid potentially blocking autocompletion for n... · Stephan Bergmann (via Code Review)
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.