summaryrefslogtreecommitdiffstats
path: root/src/4a-internals-hal/4a-internals-hal-mixer-link.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/4a-internals-hal/4a-internals-hal-mixer-link.c')
-rw-r--r--src/4a-internals-hal/4a-internals-hal-mixer-link.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/4a-internals-hal/4a-internals-hal-mixer-link.c b/src/4a-internals-hal/4a-internals-hal-mixer-link.c
index 95e9099..4e0398e 100644
--- a/src/4a-internals-hal/4a-internals-hal-mixer-link.c
+++ b/src/4a-internals-hal/4a-internals-hal-mixer-link.c
@@ -58,9 +58,11 @@ int InternalHalHandleMixerData(afb_api_t apiHandle,
case json_type_object:
mixerDataNb = 1;
break;
+
case json_type_array:
mixerDataNb = (unsigned int) json_object_array_length(currentDataJ);
break;
+
default:
mixerDataNb = 0;
AFB_API_ERROR(apiHandle, "No data returned");
@@ -104,7 +106,6 @@ int InternalHalHandleMixerData(afb_api_t apiHandle,
currentDataVerbName);
err += (int) MIXER_ERROR_STREAM_NOT_ADDED;
}
-
break;
case MIXER_DATA_PLAYBACKS:
@@ -114,8 +115,8 @@ int InternalHalHandleMixerData(afb_api_t apiHandle,
currentMixerData->verb = strdup((dataType == MIXER_DATA_PLAYBACKS) ? HAL_PLAYBACK_ID : HAL_CAPTURE_ID);
currentMixerData->verbToCall = strdup(currentDataVerbName);
- if((! currentMixerData->verb) ||
- (! currentMixerData->verbToCall)) {
+ if(! currentMixerData->verb ||
+ ! currentMixerData->verbToCall) {
HalUtlRemoveSelectedMixerData(mixerDataList, currentMixerData);
err += (int) MIXER_ERROR_STREAM_ALLOCATION_FAILED;
}
@@ -169,7 +170,11 @@ int InternalHalHandleMixerAttachResponse(afb_api_t apiHandle, struct InternalHal
return (int) MIXER_ERROR_API_UNAVAILABLE;
}
- if(wrap_json_unpack(mixerResponseJ, "{s?:o s?:o s?:o}", "streams", &mixerStreamsJ, "playbacks", &mixerPlaybacksJ, "captures", &mixerCapturesJ)) {
+ if(wrap_json_unpack(mixerResponseJ,
+ "{s?:o s?:o s?:o}",
+ "streams", &mixerStreamsJ,
+ "playbacks", &mixerPlaybacksJ,
+ "captures", &mixerCapturesJ)) {
AFB_API_ERROR(apiHandle, "Can't get streams|playbacks|captures object in '%s'", json_object_get_string(mixerResponseJ));
return (int) MIXER_ERROR_DATA_UNAVAILABLE;
}
@@ -227,14 +232,15 @@ int InternalHalAttachToMixer(afb_api_t apiHandle)
return -1;
}
- if(! (ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle))) {
- AFB_API_ERROR(apiHandle, "Can't get current hal controller config");
+ ctrlConfig = (CtlConfigT *) afb_api_get_userdata(apiHandle);
+ if(! ctrlConfig) {
+ AFB_API_ERROR(apiHandle, "Can't get current internal hal controller config");
return -2;
}
currentHalData = (struct HalData *) getExternalData(ctrlConfig);
if(! currentHalData) {
- AFB_API_ERROR(apiHandle, "Can't get current hal controller data");
+ AFB_API_ERROR(apiHandle, "Can't get current internal hal controller data");
return -3;
}
@@ -386,4 +392,4 @@ int InternalHalGetInfoFromMixer(afb_api_t apiHandle,
}
return 0;
-} \ No newline at end of file
+}