summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2007-10-21 18:29:08 -0400
committerRay Strode <rstrode@redhat.com>2007-10-21 18:29:08 -0400
commitb347d89b7bc9d801b70ffa0321bb46d2a57aef3c (patch)
tree2215bf4d85938f152a5ccf671f9c50686bbc322a /src
parent122daae898047e5de4ef98d24d4c72acd56cfc71 (diff)
downloadplymouth-b347d89b7bc9d801b70ffa0321bb46d2a57aef3c.tar.gz
plymouth-b347d89b7bc9d801b70ffa0321bb46d2a57aef3c.tar.xz
plymouth-b347d89b7bc9d801b70ffa0321bb46d2a57aef3c.zip
Use posix_openpt instead of open ("/dev/ptmx", ...)
I don't remember why I had posix_openpt disabled, but undisabling it seems to work fine, so better to use it unless I find some reason (again?) to disable it.
Diffstat (limited to 'src')
-rw-r--r--src/libply/ply-terminal.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/libply/ply-terminal.c b/src/libply/ply-terminal.c
index 19d85e6..b6dc64c 100644
--- a/src/libply/ply-terminal.c
+++ b/src/libply/ply-terminal.c
@@ -74,10 +74,7 @@ ply_terminal_create_device (ply_terminal_t *terminal)
assert (!ply_terminal_has_device (terminal));
ply_trace ("opening device '/dev/ptmx'");
-#if 0
terminal->fd = posix_openpt (O_RDWR | O_NOCTTY);
-#endif
- terminal->fd = open ("/dev/ptmx", O_RDWR | O_NOCTTY);
if (terminal->fd < 0)
return false;
@@ -86,10 +83,10 @@ ply_terminal_create_device (ply_terminal_t *terminal)
ply_trace ("creating pseudoterminal");
if (grantpt (terminal->fd) < 0)
{
- saved_errno = errno;
+ ply_save_errno ();
ply_trace ("could not create psuedoterminal: %m");
ply_terminal_destroy_device (terminal);
- errno = saved_errno;
+ ply_restore_errno ();
return false;
}
ply_trace ("done creating pseudoterminal");
@@ -97,9 +94,9 @@ ply_terminal_create_device (ply_terminal_t *terminal)
ply_trace ("unlocking pseudoterminal");
if (unlockpt (terminal->fd) < 0)
{
- saved_errno = errno;
+ ply_save_errno ();
ply_terminal_destroy_device (terminal);
- errno = saved_errno;
+ ply_restore_errno ();
return false;
}
ply_trace ("unlocked pseudoterminal");