}
if (rc >= 0 && a->entry)
- rc = a->entry(api);
+ rc = afb_api_v3_safe_preinit(api, a->entry);
if (rc >= 0)
afb_api_x3_seal(api);
goto error;
}
- api = afb_api_v3_create(declare_set, call_set, a.desc->api, a.desc->info, a.desc->noconcurrency, init, &a, 0);
+ api = afb_api_v3_create(declare_set, call_set, a.desc->api, a.desc->info, a.desc->noconcurrency, init, &a, 0, NULL, path);
if (api)
return 1;
} else {
}
export = afb_export_create_none_for_path(declare_set, call_set, path, init, &a);
- if (export)
+ if (export) {
+ afb_export_unref(export);
return 1;
+ }
}
ERROR("binding [%s] initialisation failed", path);