]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
terminal-session: plug /dev/console fd leak
authorRay Strode <rstrode@redhat.com>
Mon, 10 Jun 2013 14:44:56 +0000 (10:44 -0400)
committerRay Strode <rstrode@redhat.com>
Mon, 10 Jun 2013 14:44:56 +0000 (10:44 -0400)
When we stop redirecting console messages, we temporarly open
/dev/console.  We don't ever close it.

This commit fixes that.

src/libply/ply-terminal-session.c

index 3d43709440eb9996428dc4ac2314fbeaec98fae9..e7377e97aec027136de7ecb6e15716634b19ebf0 100644 (file)
@@ -213,8 +213,12 @@ ply_terminal_session_unredirect_console (ply_terminal_session_t *session)
   assert (session->console_is_redirected);
 
   fd = open ("/dev/console", O_RDWR | O_NOCTTY);
-  if (fd >= 0)
+  if (fd >= 0) {
     ioctl (fd, TIOCCONS);
+    close (fd);
+  } else {
+    ply_trace ("couldn't open /dev/console to stop redirecting it: %m");
+  }
 
   session->console_is_redirected = false;
 }