aboutsummaryrefslogtreecommitdiffstats
path: root/src/4a-internals-hal/4a-internals-hal-cb.c
diff options
context:
space:
mode:
authorJonathan Aillet <jonathan.aillet@iot.bzh>2019-06-14 18:14:13 +0200
committerJonathan Aillet <jonathan.aillet@iot.bzh>2019-06-18 11:34:58 +0200
commit24046bfdb0568077a074b503d58a343a06f4234a (patch)
tree54ecdea5d0768d3d354a2ddbda1e309d574bbd14 /src/4a-internals-hal/4a-internals-hal-cb.c
parent66f27bce6355cc7df978a9d7a6bc725542057a01 (diff)
Refactoring 'streams data' linked list
Refactoring 'streams data' linked list code using liburcu. BUG-AGL: SPEC-2329 Change-Id: Idf9367c015d73574d96d83c82a9e8f5b7588a45d Signed-off-by: Jonathan Aillet <jonathan.aillet@iot.bzh>
Diffstat (limited to 'src/4a-internals-hal/4a-internals-hal-cb.c')
-rw-r--r--src/4a-internals-hal/4a-internals-hal-cb.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/4a-internals-hal/4a-internals-hal-cb.c b/src/4a-internals-hal/4a-internals-hal-cb.c
index 07bad11..199fc5a 100644
--- a/src/4a-internals-hal/4a-internals-hal-cb.c
+++ b/src/4a-internals-hal/4a-internals-hal-cb.c
@@ -1079,7 +1079,7 @@ void InternalHalInfo(afb_req_t request)
}
streamsArray = HalUtlGetJsonArrayForAllMixersData(apiHandle,
- &currentHalData->internalHalData->streamsData);
+ &currentHalData->internalHalData->streamsDataListHead);
if(! streamsArray) {
afb_req_fail(request, "streams_data", "Didn't succeed to generate streams data array");
return;
@@ -1214,10 +1214,9 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
subscriptionDoneNb++;
}
- currentStreamData = currentHalData->internalHalData->streamsData;
- while(currentStreamData &&
- ! subscriptionFound) {
- if(! strcasecmp(currentSubscriptionString, currentStreamData->verb)) {
+ cds_list_for_each_entry(currentStreamData, &currentHalData->internalHalData->streamsDataListHead, node) {
+ if(! subscriptionFound &&
+ ! strcasecmp(currentSubscriptionString, currentStreamData->verb)) {
if(currentStreamData->event &&
subscribeUnsubscribeType == SUBSCRIPTION &&
afb_req_subscribe(request, currentStreamData->event)) {
@@ -1241,8 +1240,6 @@ void InternalHalSubscribeUnsubscribe(afb_req_t request, enum SubscribeUnsubscrib
subscriptionDoneNb++;
break;
}
-
- currentStreamData = currentStreamData->next;
}
searchIdx = 0;