diff options
Diffstat (limited to 'lib/igt_kms.c')
-rw-r--r-- | lib/igt_kms.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 3960d24f..5f341ffb 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -620,15 +620,16 @@ static void restore_vt_mode_at_exit(int sig) void igt_set_vt_graphics_mode(void) { + long ret; + igt_install_exit_handler(restore_vt_mode_at_exit); igt_disable_exit_handler(); - orig_vt_mode = set_vt_mode(KD_GRAPHICS); - if (orig_vt_mode < 0) - orig_vt_mode = -1UL; + ret = set_vt_mode(KD_GRAPHICS); igt_enable_exit_handler(); - igt_assert(orig_vt_mode >= 0); + igt_assert(ret >= 0); + orig_vt_mode = ret; } int kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector, |