summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@redhat.com>2008-12-19 10:15:35 -0500
committerKristian Høgsberg <krh@redhat.com>2008-12-19 10:15:35 -0500
commit38ccd3a23e51dfa06064e438619e7eef65564687 (patch)
tree059985c8d683b947d0470ad565ca3b31d601f2d7
parent19ad6a9db3ab699cdb7cee3bd0232ccb6d0e1e0e (diff)
Do vt ioctl on the right fd.
-rw-r--r--egl-compositor.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/egl-compositor.c b/egl-compositor.c
index 33081a3..3c8aeb6 100644
--- a/egl-compositor.c
+++ b/egl-compositor.c
@@ -1054,6 +1054,8 @@ static void on_enter_vt(int signal_number, void *data)
int i, ret;
int fd;
+ ioctl(ec->tty_fd, VT_RELDISP, VT_ACKACQ);
+
fd = ec->gem_fd;
resources = drmModeGetResources(fd);
if (!resources) {
@@ -1110,7 +1112,6 @@ static void on_leave_vt(int signal_number, void *data)
static void watch_for_vt_changes(struct egl_compositor *ec, struct wl_event_loop *loop)
{
- int fd;
struct vt_mode mode = { 0 };
ec->tty_fd = open("/dev/tty0", O_RDWR | O_NOCTTY);
@@ -1118,7 +1119,7 @@ static void watch_for_vt_changes(struct egl_compositor *ec, struct wl_event_loop
mode.relsig = SIGUSR1;
mode.acqsig = SIGUSR2;
- if (!ioctl (fd, VT_SETMODE, &mode) < 0) {
+ if (!ioctl (ec->tty_fd, VT_SETMODE, &mode) < 0) {
fprintf(stderr, "failed to take control of vt handling\n");
}