mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-02-07 06:50:24 +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>
|
2011-05-16 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
* cygtls.h (struct _local_storage): Remove unused members rarg and
|
* cygtls.h (struct _local_storage): Remove unused members rarg and
|
||||||
|
@ -56,9 +56,6 @@ bool display_title;
|
|||||||
bool strip_title_path;
|
bool strip_title_path;
|
||||||
bool allow_glob = true;
|
bool allow_glob = true;
|
||||||
|
|
||||||
/* Static getlogin buffer. */
|
|
||||||
char __getlogin_username[UNLEN + 1];
|
|
||||||
|
|
||||||
bool NO_COPY in_forkee;
|
bool NO_COPY in_forkee;
|
||||||
|
|
||||||
int __argc_safe;
|
int __argc_safe;
|
||||||
|
@ -187,7 +187,7 @@ uinfo_init ()
|
|||||||
extern "C" int
|
extern "C" int
|
||||||
getlogin_r (char *name, size_t namesize)
|
getlogin_r (char *name, size_t namesize)
|
||||||
{
|
{
|
||||||
char *login = getlogin ();
|
const char *login = cygheap->user.name ();
|
||||||
size_t len = strlen (login) + 1;
|
size_t len = strlen (login) + 1;
|
||||||
if (len > namesize)
|
if (len > namesize)
|
||||||
return ERANGE;
|
return ERANGE;
|
||||||
@ -201,7 +201,14 @@ getlogin_r (char *name, size_t namesize)
|
|||||||
extern "C" char *
|
extern "C" char *
|
||||||
getlogin (void)
|
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
|
extern "C" __uid32_t
|
||||||
|
Loading…
x
Reference in New Issue
Block a user