goto end;
}
- component->initializing = BT_TRUE;
-
if (component_class->methods.init) {
BT_LOGD_STR("Calling user's initialization method.");
ret = component_class->methods.init(
init_method_data);
BT_LOGD("User method returned: status=%s",
bt_component_status_string(ret));
- component->initializing = BT_FALSE;
if (ret != BT_COMPONENT_STATUS_OK) {
BT_LOGW_STR("Initialization method failed.");
BT_PUT(component);
}
}
- component->initializing = BT_FALSE;
ret = component_validation_funcs[type](component);
if (ret != BT_COMPONENT_STATUS_OK) {
BT_LOGW("Component is invalid: status=%s",
goto end;
}
- if (!component->initializing) {
- ret = BT_COMPONENT_STATUS_INVALID;
- goto end;
- }
-
component->user_data = data;
BT_LOGV("Set component's user data: "
"comp-addr=%p, comp-name=\"%s\", user-data-addr=%p",