2016-09-16 11:10:58 +00:00
committed by Git OBS Bridge
parent b7ddb40200
commit 4e5141c5ac
46 changed files with 645 additions and 829 deletions

View File

@@ -1,6 +1,14 @@
---
bashline.c | 1 +
examples/loadables/finfo.c | 16 ++++++++++------
examples/loadables/id.c | 37 +++++++++++++++++++++++++------------
lib/tilde/shell.c | 9 +++++++++
lib/tilde/tilde.c | 1 +
5 files changed, 46 insertions(+), 18 deletions(-)
--- bashline.c
+++ bashline.c 2011-11-21 12:41:19.831646479 +0000
@@ -2149,6 +2149,7 @@ bash_groupname_completion_function (text
@@ -2485,6 +2485,7 @@ bash_groupname_completion_function (text
}
value = savestring (grent->gr_name);
@@ -10,7 +18,7 @@
}
--- examples/loadables/finfo.c
+++ examples/loadables/finfo.c 2011-11-21 12:23:17.331147246 +0000
@@ -269,6 +269,7 @@ struct stat *st;
@@ -290,6 +290,7 @@ struct stat *st;
pw = getpwuid(st->st_uid);
owner = pw ? pw->pw_name : "unknown";
printf("Uid of owner: %d (%s)\n", (int) st->st_uid, owner);
@@ -18,7 +26,7 @@
gr = getgrgid(st->st_gid);
owner = gr ? gr->gr_name : "unknown";
printf("Gid of owner: %d (%s)\n", (int) st->st_gid, owner);
@@ -277,6 +278,7 @@ struct stat *st;
@@ -298,6 +299,7 @@ struct stat *st;
printf("File last access time: %s", ctime (&st->st_atime));
printf("File last modify time: %s", ctime (&st->st_mtime));
printf("File last status change time: %s", ctime (&st->st_ctime));
@@ -26,7 +34,7 @@
fflush(stdout);
return(0);
}
@@ -345,16 +347,18 @@ int flags;
@@ -366,16 +368,18 @@ int flags;
else if (flags & OPT_PMASK)
printf("%o\n", getperm(st->st_mode) & pmask);
else if (flags & OPT_UID) {
@@ -156,29 +164,6 @@
char *
get_env_value (varname)
char *varname;
@@ -58,12 +67,19 @@ get_env_value (varname)
char *
get_home_dir ()
{
- char *home_dir;
+ static char *home_dir;
struct passwd *entry;
- home_dir = (char *)NULL;
+ if (home_dir)
+ goto out;
+#if defined (HAVE_GETPWUID)
entry = getpwuid (getuid ());
if (entry)
- home_dir = entry->pw_dir;
+ home_dir = savestring(entry->pw_dir);
+#endif
+#if defined (HAVE_GETPWENT)
+ endpwent ();
+#endif
+out:
return (home_dir);
}
--- lib/tilde/tilde.c
+++ lib/tilde/tilde.c 2011-11-11 13:10:07.000000000 +0000
@@ -61,6 +61,7 @@ extern struct passwd *getpwuid PARAMS((u