Commit 0c6d656d authored by Paul Eggert's avatar Paul Eggert
Browse files

* update-game-score.c: Include <limits.h>

(get_user_id): Do not assume uid fits in 'int'.  Simplify.
parent 644a0faa
......@@ -30,6 +30,9 @@
in 'int'. Instead, put the possibly-long file name into the
output of pfatal_with_name.
* update-game-score.c: Include <limits.h>
(get_user_id): Do not assume uid fits in 'int'. Simplify.
2011-07-28 Paul Eggert <eggert@cs.ucla.edu>
Assume freestanding C89 headers, string.h, stdlib.h.
......
......@@ -35,6 +35,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <unistd.h>
#include <errno.h>
#include <limits.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
......@@ -128,19 +129,13 @@ lose_syserr (const char *msg)
static char *
get_user_id (void)
{
char *name;
struct passwd *buf = getpwuid (getuid ());
if (!buf)
{
int count = 1;
int uid = (int) getuid ();
int tuid = uid;
while (tuid /= 10)
count++;
name = malloc (count+1);
if (!name)
return NULL;
sprintf (name, "%d", uid);
long uid = getuid ();
char *name = malloc (sizeof uid * CHAR_BIT / 3 + 1);
if (name)
sprintf (name, "%ld", uid);
return name;
}
return buf->pw_name;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment