#include "babeltrace2-plugins.h"
+#include <stdbool.h>
#include <babeltrace2/babeltrace.h>
/* Array of bt_plugin * */
g_ptr_array_free(loaded_plugins, TRUE);
}
-const bt_plugin *find_loaded_plugin(const char *name)
+const bt_plugin *borrow_loaded_plugin_by_name(const char *name)
{
int i;
const bt_plugin *plugin = NULL;
BT_LOGI("Cannot find plugin: name=\"%s\"", name);
}
- bt_plugin_get_ref(plugin);
return plugin;
}
return (const bt_plugin **) loaded_plugins->pdata;
}
-const bt_plugin *borrow_loaded_plugin(size_t index)
+const bt_plugin *borrow_loaded_plugin_by_index(size_t index)
{
BT_ASSERT(index < loaded_plugins->len);
return g_ptr_array_index(loaded_plugins, index);
const bt_plugin *plugin =
bt_plugin_set_borrow_plugin_by_index_const(plugin_set, i);
const bt_plugin *loaded_plugin =
- find_loaded_plugin(bt_plugin_get_name(plugin));
+ borrow_loaded_plugin_by_name(bt_plugin_get_name(plugin));
BT_ASSERT(plugin);
bt_plugin_get_name(plugin),
bt_plugin_get_path(plugin),
bt_plugin_get_path(loaded_plugin));
- bt_plugin_put_ref(loaded_plugin);
} else {
/* Add to global array. */
BT_LOGD("Adding plugin to loaded plugins: plugin-path=\"%s\"",
{
int nr_paths, i, ret = 0;
- nr_paths = bt_value_array_get_size(plugin_paths);
- if (nr_paths < 0) {
- BT_CLI_LOGE_APPEND_CAUSE(
- "Cannot load dynamic plugins: no plugin path.");
- ret = -1;
+ nr_paths = bt_value_array_get_length(plugin_paths);
+ if (nr_paths == 0) {
+ BT_LOGI_STR("No dynamic plugin path.");
goto end;
}
}
status = bt_plugin_find_all_from_dir(plugin_path, BT_FALSE,
- BT_FALSE, &plugin_set);
+ BT_TRUE, &plugin_set);
if (status < 0) {
- BT_LOGE("Unable to load dynamic plugins from directory: "
+ BT_CLI_LOGE_APPEND_CAUSE(
+ "Unable to load dynamic plugins from directory: "
"path=\"%s\"", plugin_path);
- continue;
+ ret = status;
+ goto end;
} else if (status ==
BT_PLUGIN_FIND_ALL_FROM_DIR_STATUS_NOT_FOUND) {
BT_LOGI("No plugins found in directory: path=\"%s\"",