summaryrefslogtreecommitdiff
path: root/winsup/cygwin/tty.cc
diff options
context:
space:
mode:
authorChristopher Faylor <cgf@redhat.com>2003-03-09 16:22:57 +0000
committerChristopher Faylor <cgf@redhat.com>2003-03-09 16:22:57 +0000
commit0040737d97da833819963b4a775115a021f8a4eb (patch)
tree7c6d6ee7a4b8c8db50fd62f988ae4530b4dda5f9 /winsup/cygwin/tty.cc
parent542601febcf8abfe74acd8761917bda100b117dd (diff)
downloadgdb-0040737d97da833819963b4a775115a021f8a4eb.tar.gz
merge from trunk
Diffstat (limited to 'winsup/cygwin/tty.cc')
-rw-r--r--winsup/cygwin/tty.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/tty.cc b/winsup/cygwin/tty.cc
index b9417d18da9..bb644b2e5d3 100644
--- a/winsup/cygwin/tty.cc
+++ b/winsup/cygwin/tty.cc
@@ -82,12 +82,18 @@ create_tty_master (int ttynum)
{
/* Log utmp entry */
struct utmp our_utmp;
+ DWORD len = sizeof our_utmp.ut_host;
bzero ((char *) &our_utmp, sizeof (utmp));
(void) time (&our_utmp.ut_time);
strncpy (our_utmp.ut_name, getlogin (), sizeof (our_utmp.ut_name));
- cygwin_gethostname (our_utmp.ut_host, sizeof (our_utmp.ut_host));
+ GetComputerName (our_utmp.ut_host, &len);
__small_sprintf (our_utmp.ut_line, "tty%d", ttynum);
+ if ((len = strlen (our_utmp.ut_line)) >= UT_IDLEN)
+ len -= UT_IDLEN;
+ else
+ len = 0;
+ strncpy (our_utmp.ut_id, our_utmp.ut_line + len, UT_IDLEN);
our_utmp.ut_type = USER_PROCESS;
our_utmp.ut_pid = myself->pid;
myself->ctty = ttynum;