call-forwarding: Refactor cf_find_unconditional()
authorOleg Zhurakivskyy <oleg.zhurakivskyy@intel.com>
Tue, 10 Apr 2012 12:17:27 +0000 (15:17 +0300)
committerDenis Kenzior <denkenz@gmail.com>
Mon, 23 Apr 2012 20:35:22 +0000 (15:35 -0500)
src/call-forwarding.c

index 2a7bff0..0bf406a 100644 (file)
@@ -197,26 +197,12 @@ static void sim_cphs_cff_update_cb(int ok, void *data)
                ofono_info("Failed to update EFcphs-cff");
 }
 
-static struct ofono_call_forwarding_condition *cf_find_unconditional(
+static inline struct ofono_call_forwarding_condition *cf_find_unconditional(
                                        struct ofono_call_forwarding *cf)
 {
-       GSList *l = cf->cf_conditions[CALL_FORWARDING_TYPE_UNCONDITIONAL];
-       struct ofono_call_forwarding_condition *cond;
-
-       /*
-        * For now we only support Voice, although Fax & all Data
-        * basic services are applicable as well.
-        */
-       for (; l; l = l->next) {
-               cond = l->data;
-
-               if (cond->cls > BEARER_CLASS_VOICE)
-                       continue;
-
-               return cond;
-       }
-
-       return NULL;
+       return cf_cond_find(
+               cf->cf_conditions[CALL_FORWARDING_TYPE_UNCONDITIONAL],
+               BEARER_CLASS_VOICE);
 }
 
 static void sim_set_cf_indicator(struct ofono_call_forwarding *cf)