aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/terminals.c
diff options
context:
space:
mode:
authorVadim Godunko <godunko@adacore.com>2019-09-17 08:01:48 +0000
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>2019-09-17 08:01:48 +0000
commit94c44a8a3000348707a456f8ebc1b1d67b688ea4 (patch)
tree6ea3745bc0beb963fc8ed9f6826320b35b2629cc /gcc/ada/terminals.c
parent19716ceb1676e1a947527b3ae1d59dce646dd76c (diff)
downloadgcc-94c44a8a3000348707a456f8ebc1b1d67b688ea4.zip
gcc-94c44a8a3000348707a456f8ebc1b1d67b688ea4.tar.gz
gcc-94c44a8a3000348707a456f8ebc1b1d67b688ea4.tar.bz2
[Ada] Close file descriptors allocated for tty only once
2019-09-17 Vadim Godunko <godunko@adacore.com> gcc/ada/ * libgnat/g-exptty.ads (Close_Input): New subprogram. * libgnat/g-exptty.adb (Close_Input): New subprogram. (Close): Move close of TTY to Close_Input. * terminals.c (__gnat_close_tty): Set file descriptors to invalid value after close. From-SVN: r275783
Diffstat (limited to 'gcc/ada/terminals.c')
-rw-r--r--gcc/ada/terminals.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/ada/terminals.c b/gcc/ada/terminals.c
index 320ad28..0ce3fb7 100644
--- a/gcc/ada/terminals.c
+++ b/gcc/ada/terminals.c
@@ -1648,8 +1648,8 @@ __gnat_new_tty (void)
*/
void __gnat_close_tty (pty_desc* desc)
{
- if (desc->master_fd >= 0) close (desc->master_fd);
- if (desc->slave_fd >= 0) close (desc->slave_fd);
+ if (desc->master_fd >= 0) { close (desc->master_fd); desc->master_fd = -1; }
+ if (desc->slave_fd >= 0) { close (desc->slave_fd); desc->slave_fd = -1; }
}
/* __gnat_tty_name - return slave side device name