diff options
Diffstat (limited to 'src/app.c')
-rw-r--r-- | src/app.c | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -35,9 +35,11 @@ #include "app.h" #include "common/io.h" #include "common/xdg.h" +#include "core/core.h" #include "core/logs.h" #include "gui/core/core.h" #include "gui/window.h" +#include "plugins/pglist.h" @@ -503,9 +505,14 @@ int main(int argc, char **argv) set_log_verbosity(verbosity); - if (!load_gui_components(AGC_BUFFER_FEATURES | AGC_PANELS)) + if (!load_core_components(ACC_GLOBAL_VARS)) goto exit; + if (!load_gui_components(AGC_BUFFER_FEATURES | AGC_PANELS)) + goto exit_with_core; + + init_all_plugins(true); + ensure_wm_icon_and_name(); g_set_prgname("Chrysalide"); @@ -516,8 +523,14 @@ int main(int argc, char **argv) g_object_unref(G_OBJECT(app)); + exit_all_plugins(); + unload_gui_components(AGC_BUFFER_FEATURES | AGC_PANELS); + exit_with_core: + + unload_core_components(ACC_GLOBAL_VARS); + exit: return result; |