kms: Keep a shutting_down flag
This commit is contained in:
parent
b61fe512ef
commit
0f18e66535
2 changed files with 11 additions and 0 deletions
|
@ -63,6 +63,8 @@ struct _MetaKms
|
||||||
int kernel_thread_inhibit_count;
|
int kernel_thread_inhibit_count;
|
||||||
|
|
||||||
MetaKmsCursorManager *cursor_manager;
|
MetaKmsCursorManager *cursor_manager;
|
||||||
|
|
||||||
|
gboolean shutting_down;
|
||||||
};
|
};
|
||||||
|
|
||||||
G_DEFINE_TYPE (MetaKms, meta_kms, META_TYPE_THREAD)
|
G_DEFINE_TYPE (MetaKms, meta_kms, META_TYPE_THREAD)
|
||||||
|
@ -354,6 +356,7 @@ static void
|
||||||
on_prepare_shutdown (MetaBackend *backend,
|
on_prepare_shutdown (MetaBackend *backend,
|
||||||
MetaKms *kms)
|
MetaKms *kms)
|
||||||
{
|
{
|
||||||
|
kms->shutting_down = TRUE;
|
||||||
meta_kms_run_impl_task_sync (kms, prepare_shutdown_in_impl, NULL, NULL);
|
meta_kms_run_impl_task_sync (kms, prepare_shutdown_in_impl, NULL, NULL);
|
||||||
meta_thread_flush_callbacks (META_THREAD (kms));
|
meta_thread_flush_callbacks (META_THREAD (kms));
|
||||||
|
|
||||||
|
@ -413,6 +416,12 @@ meta_kms_new (MetaBackend *backend,
|
||||||
return kms;
|
return kms;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gboolean
|
||||||
|
meta_kms_is_shutting_down (MetaKms *kms)
|
||||||
|
{
|
||||||
|
return kms->shutting_down;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
meta_kms_finalize (GObject *object)
|
meta_kms_finalize (GObject *object)
|
||||||
{
|
{
|
||||||
|
|
|
@ -60,6 +60,8 @@ MetaKmsDevice * meta_kms_create_device (MetaKms *kms,
|
||||||
MetaKmsDeviceFlag flags,
|
MetaKmsDeviceFlag flags,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
|
||||||
|
gboolean meta_kms_is_shutting_down (MetaKms *kms);
|
||||||
|
|
||||||
MetaKms * meta_kms_new (MetaBackend *backend,
|
MetaKms * meta_kms_new (MetaBackend *backend,
|
||||||
MetaKmsFlags flags,
|
MetaKmsFlags flags,
|
||||||
GError **error);
|
GError **error);
|
||||||
|
|
Loading…
Reference in a new issue