Also set the cached flag on CFU activation and
re-querying of the conditionals.
---
src/call-forwarding.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/src/call-forwarding.c b/src/call-forwarding.c
index 786d163..aa1ece7 100644
--- a/src/call-forwarding.c
+++ b/src/call-forwarding.c
@@ -659,6 +659,16 @@ static void set_query_cf_callback(const struct ofono_error
*error, int total,
DBG("%s conditions:", cf_type_lut[cf->query_next]);
cf_cond_list_print(cf->cf_conditions[cf->query_next]);
+ if (cf->query_next == CALL_FORWARDING_TYPE_UNCONDITIONAL) {
+ cf->flags |= CALL_FORWARDING_FLAG_CACHED;
+
+ /*
+ * CFU has been disabled, conditionals need to be updated
+ */
+ if (is_cfu_enabled(cf) == FALSE)
+ cf->query_end = CALL_FORWARDING_TYPE_NOT_REACHABLE;
+ }
+
if (cf->query_next == cf->query_end)
return;
--
1.7.5.4
_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono