core: monitor the inotify file descriptor not the console one in acquire_terminal()
authorFranck Bui <fbui@suse.com>
Wed, 2 Nov 2016 15:24:57 +0000 (16:24 +0100)
committerFranck Bui <fbui@suse.com>
Thu, 17 Nov 2016 08:22:45 +0000 (09:22 +0100)
When waiting for the terminal to be release in acquire_terminal(), we
were monitoring the terminal fd instead of the inotify descriptor.

Therefore any write accesses would wake up the waiting process instead
of being wake up when the tty is closed only.

src/basic/terminal-util.c

index eafdea9..4b04ccc 100644 (file)
@@ -455,7 +455,7 @@ int acquire_terminal(
                                         goto fail;
                                 }
 
-                                r = fd_wait_for_event(fd, POLLIN, ts + timeout - n);
+                                r = fd_wait_for_event(notify, POLLIN, ts + timeout - n);
                                 if (r < 0)
                                         goto fail;