Mercurial > emacs
diff src/editfns.c @ 71817:fb57c1830788
Include blockinput.h.
(Fuser_login_name, Fuser_full_name): Add BLOCK_INPUT around
getpwuid/getpwnam.
author | YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> |
---|---|
date | Wed, 12 Jul 2006 08:37:25 +0000 |
parents | 36c0b042a602 |
children | e891eb992cb2 |
line wrap: on
line diff
--- a/src/editfns.c Wed Jul 12 08:37:07 2006 +0000 +++ b/src/editfns.c Wed Jul 12 08:37:25 2006 +0000 @@ -56,6 +56,7 @@ #include "coding.h" #include "frame.h" #include "window.h" +#include "blockinput.h" #ifdef STDC_HEADERS #include <float.h> @@ -1302,7 +1303,9 @@ return Vuser_login_name; CHECK_NUMBER (uid); + BLOCK_INPUT; pw = (struct passwd *) getpwuid (XINT (uid)); + UNBLOCK_INPUT; return (pw ? build_string (pw->pw_name) : Qnil); } @@ -1356,9 +1359,17 @@ if (NILP (uid)) return Vuser_full_name; else if (NUMBERP (uid)) - pw = (struct passwd *) getpwuid ((uid_t) XFLOATINT (uid)); + { + BLOCK_INPUT; + pw = (struct passwd *) getpwuid ((uid_t) XFLOATINT (uid)); + UNBLOCK_INPUT; + } else if (STRINGP (uid)) - pw = (struct passwd *) getpwnam (SDATA (uid)); + { + BLOCK_INPUT; + pw = (struct passwd *) getpwnam (SDATA (uid)); + UNBLOCK_INPUT; + } else error ("Invalid UID specification");