[orca/gnome-3-16] Don't search for replicants for Gecko zombies when pages are being loaded
- From: Joanmarie Diggs <joanied src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [orca/gnome-3-16] Don't search for replicants for Gecko zombies when pages are being loaded
- Date: Wed, 8 Apr 2015 15:24:28 +0000 (UTC)
commit e6a7bc8ec5cf7f0df33ba9faaa59d20f9131542b
Author: Joanmarie Diggs <jdiggs igalia com>
Date: Wed Apr 8 11:21:54 2015 -0400
Don't search for replicants for Gecko zombies when pages are being loaded
If pyatspi is looking for descendants in a tree that gets destroyed during
the search, Orca can hang.
src/orca/scripts/toolkits/Gecko/script.py | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/src/orca/scripts/toolkits/Gecko/script.py b/src/orca/scripts/toolkits/Gecko/script.py
index e52e5a4..758812d 100644
--- a/src/orca/scripts/toolkits/Gecko/script.py
+++ b/src/orca/scripts/toolkits/Gecko/script.py
@@ -1078,10 +1078,10 @@ class Script(default.Script):
if focusRole == pyatspi.ROLE_LIST_ITEM \
and not self.inDocumentContent(orca_state.locusOfFocus):
return
-
+
+ self._loadingDocumentContent = event.detail1
finishedLoading = False
if event.detail1:
- self._loadingDocumentContent = True
message = messages.PAGE_LOADING_START
elif name:
message = messages.PAGE_LOADING_END_NAMED % name
@@ -1152,7 +1152,7 @@ class Script(default.Script):
# because the proverbial rug has just been pulled out from under us. :(
# To make matters worse, the replacement object can be in the ancestry.
obj, offset = self.getCaretContext()
- if obj and self.utilities.isZombie(obj):
+ if obj and self.utilities.isZombie(obj) and not self._loadingDocumentContent:
replicant = self.utilities.findReplicant(event.source, obj)
if replicant:
# Refrain from actually touching the replicant by grabbing
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]