From d4bc54b120a0885f991c7dadcb168f0fcd5243c2 Mon Sep 17 00:00:00 2001 From: Daniel Narvaez Date: Thu, 27 Dec 2012 22:40:02 +0000 Subject: Try to handle atspi ipc errors --- (limited to 'tests') diff --git a/tests/sugar/tree.py b/tests/sugar/tree.py index 19206e2..0280d7d 100644 --- a/tests/sugar/tree.py +++ b/tests/sugar/tree.py @@ -2,6 +2,7 @@ import logging import time from gi.repository import Atspi +from gi.repository import GLib Atspi.set_timeout(-1, -1) @@ -21,7 +22,16 @@ def _retry_find(func): kwargs.get("name", None), kwargs.get("role_name", None))) - result = func(*args, **kwargs) + try: + result = func(*args, **kwargs) + except GLib.GError, e: + # The application is not responding, try again + if e.code == Atspi.Error.IPC: + continue + + logging.error("GError code %d", e.code) + raise + expect_none = kwargs.get("expect_none", False) if (not expect_none and result) or \ (expect_none and not result): -- cgit v0.9.1