main: Tear down the gjs context before the mutter context

Tearing down gjs means that we won't have any dangling references kept
alive by GC or otherwise alive Javascript objects, when we finally tear
down the mutter context. This allows for a clean shutdown of GNOME
Shell.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1349>
This commit is contained in:
Jonas Ådahl 2022-08-17 16:32:52 +02:00
parent f2ca53b9e0
commit 1559f03a82

View File

@ -587,14 +587,14 @@ main (int argc, char **argv)
g_message ("Shutting down GNOME Shell");
_shell_global_notify_shutdown (shell_global_get ());
meta_context_destroy (g_steal_pointer (&context));
shell_profiler_shutdown ();
g_debug ("Doing final cleanup");
g_debug ("Tearing down the gjs context");
_shell_global_destroy_gjs_context (shell_global_get ());
g_object_unref (shell_global_get ());
g_debug ("Tearing down the mutter context");
meta_context_destroy (g_steal_pointer (&context));
return ecode;
}