mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-01-31 03:20:28 +08:00
* globals.cc (__getlogin_username): Remove.
* uinfo.cc (getlogin_r): Fetch username from cygheap. (getlogin): Add static buffer username and fetch username from getlogin_r.
This commit is contained in:
parent
bdc00a0d85
commit
553f08059b
@ -1,3 +1,10 @@
|
||||
2011-05-16 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* globals.cc (__getlogin_username): Remove.
|
||||
* uinfo.cc (getlogin_r): Fetch username from cygheap.
|
||||
(getlogin): Add static buffer username and fetch username from
|
||||
getlogin_r.
|
||||
|
||||
2011-05-16 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* cygtls.h (struct _local_storage): Remove unused members rarg and
|
||||
|
@ -56,9 +56,6 @@ bool display_title;
|
||||
bool strip_title_path;
|
||||
bool allow_glob = true;
|
||||
|
||||
/* Static getlogin buffer. */
|
||||
char __getlogin_username[UNLEN + 1];
|
||||
|
||||
bool NO_COPY in_forkee;
|
||||
|
||||
int __argc_safe;
|
||||
|
@ -187,7 +187,7 @@ uinfo_init ()
|
||||
extern "C" int
|
||||
getlogin_r (char *name, size_t namesize)
|
||||
{
|
||||
char *login = getlogin ();
|
||||
const char *login = cygheap->user.name ();
|
||||
size_t len = strlen (login) + 1;
|
||||
if (len > namesize)
|
||||
return ERANGE;
|
||||
@ -201,7 +201,14 @@ getlogin_r (char *name, size_t namesize)
|
||||
extern "C" char *
|
||||
getlogin (void)
|
||||
{
|
||||
return strcpy (__getlogin_username, cygheap->user.name ());
|
||||
static char username[UNLEN];
|
||||
int ret = getlogin_r (username, UNLEN);
|
||||
if (ret)
|
||||
{
|
||||
set_errno (ret);
|
||||
return NULL;
|
||||
}
|
||||
return username;
|
||||
}
|
||||
|
||||
extern "C" __uid32_t
|
||||
|
Loading…
x
Reference in New Issue
Block a user