summaryrefslogtreecommitdiff
path: root/lib/igt_chamelium.c
diff options
context:
space:
mode:
authorArkadiusz Hiler <arkadiusz.hiler@intel.com>2020-02-25 18:56:16 +0200
committerArkadiusz Hiler <arkadiusz.hiler@intel.com>2020-03-23 15:47:34 +0200
commit486659662d7345f6a4706b9adc3a7b3568602eee (patch)
tree8d0e095cbb1e69df479c91d098754e6595b822db /lib/igt_chamelium.c
parent50381ea560b6512e5541ba7fda7448be8d4589c8 (diff)
lib/chamelium: Clear error after checking if chamelium is reachable
Otherwise this may get us stuck in perpetual failure mode. Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Diffstat (limited to 'lib/igt_chamelium.c')
-rw-r--r--lib/igt_chamelium.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/igt_chamelium.c b/lib/igt_chamelium.c
index 2a4930ec..bc9603fb 100644
--- a/lib/igt_chamelium.c
+++ b/lib/igt_chamelium.c
@@ -361,11 +361,17 @@ static bool __chamelium_is_reachable(struct chamelium *chamelium)
if (res != NULL)
xmlrpc_DECREF(res);
- if (chamelium->env.fault_occurred)
+ if (chamelium->env.fault_occurred) {
igt_debug("Chamelium RPC call failed: %s\n",
chamelium->env.fault_string);
- return !chamelium->env.fault_occurred;
+ xmlrpc_env_clean(&chamelium->env);
+ xmlrpc_env_init(&chamelium->env);
+
+ return false;
+ }
+
+ return true;
}
void chamelium_wait_reachable(struct chamelium *chamelium, int timeout)