diff options
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.c | 14 |
1 files changed, 9 insertions, 5 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 56dc840..a1b87b0 100644 --- a/src/4a-internals-hal/4a-internals-hal-mixer-link.c +++ b/src/4a-internals-hal/4a-internals-hal-mixer-link.c @@ -142,7 +142,7 @@ int InternalHalHandleMixerAttachResponse(afb_api_t apiHandle, struct InternalHal return 0; } -int InternalHalAttachToMixer(afb_api_t apiHandle) +int InternalHalAttachDependencyToMixer(afb_api_t apiHandle, struct InternalHalProbedDevice *probedDeviceToAttach) { int err = 0, mixerError; @@ -194,9 +194,10 @@ int InternalHalAttachToMixer(afb_api_t apiHandle) return -6; } - dependencyJ = HalUtlGetJsonArrayForAllDependencies(apiHandle, - ¤tHalData->internalHalData->probedDevicesListHead, - DEPENDENCY_COMPACT_JSON); + dependencyJ = HalUtlGetJsonArrayForAllDependenciesInfoWithHandledDependency(apiHandle, + ¤tHalData->internalHalData->probedDevicesListHead, + DEPENDENCY_COMPACT_JSON, + probedDeviceToAttach->uid); if(! dependencyJ) { AFB_API_ERROR(apiHandle, "Didn't succeed to generate available dependencies compact json array"); return -7; @@ -251,10 +252,13 @@ int InternalHalAttachToMixer(afb_api_t apiHandle) MIXER_ATTACH_VERB, apiToCall, json_object_get_string(responseJ)); - currentHalData->status = HAL_STATUS_READY; } } + if(err) + probedDeviceToAttach->mixerLinkStatus = DEPENDENCY_MIXER_ATTACH_FAILED; + else + probedDeviceToAttach->mixerLinkStatus = DEPENDENCY_MIXER_ATTACH_SUCCEED; if(responseJ) json_object_put(responseJ); |