shared/shell: Add bt_shell_cleanup
This releases resources used for shell initialization.
This is needed as a separate function to enable clean shutdown
when an application needs to exit prior to calling bt_shell_run(),
e.g., when failing program initialization based on processed command
line input options.
diff --git a/src/shared/shell.c b/src/shared/shell.c
index 10f2626..33bc0d9 100644
--- a/src/shared/shell.c
+++ b/src/shared/shell.c
@@ -1001,11 +1001,16 @@
mainloop_run();
+ io_destroy(signal);
+
+ bt_shell_cleanup();
+}
+
+void bt_shell_cleanup(void)
+{
bt_shell_release_prompt("");
bt_shell_detach();
- io_destroy(signal);
-
if (data.envs) {
queue_destroy(data.envs, env_destroy);
data.envs = NULL;