Introduction
Introduction Statistics Contact Development Disclaimer Help
tFixing the last patch to the surf style. - surf - customized build of surf, th…
git clone git://src.adamsgaard.dk/surf
Log
Files
Refs
README
LICENSE
---
commit 8682a4dffb33b37ba9d3e42b40f25fac3f92e510
parent cee8f0186ce3277add9b6a8ac07588be40f0f080
Author: Christoph Lohmann <[email protected]>
Date: Fri, 3 Jun 2016 15:14:53 +0200
Fixing the last patch to the surf style.
Diffstat:
M surf.c | 33 +++++++++++++++++------------…
1 file changed, 18 insertions(+), 15 deletions(-)
---
diff --git a/surf.c b/surf.c
t@@ -144,6 +144,8 @@ static void setup(void);
static void sigchld(int unused);
static char *buildfile(const char *path);
static char *buildpath(const char *path);
+static const char *getuserhomedir(const char *user);
+static const char *getcurrentuserhomedir(void);
static Client *newclient(Client *c);
static void loaduri(Client *c, const Arg *a);
static const char *geturi(Client *c);
t@@ -351,34 +353,35 @@ buildfile(const char *path)
}
static const char*
-get_user_homedir(const char *user) {
+getuserhomedir(const char *user)
+{
struct passwd *pw = getpwnam(user);
- if (!pw) {
- die("Can't get user `%s' home directory.\n", user);
- }
+
+ if (!pw)
+ die("Can't get user %s login information.\n", user);
+
return pw->pw_dir;
}
static const char*
-get_current_user_homedir() {
+getcurrentuserhomedir(void)
+{
const char *homedir;
const char *user;
struct passwd *pw;
homedir = getenv("HOME");
- if (homedir) {
+ if (homedir)
return homedir;
- }
user = getenv("USER");
- if (user) {
- return get_user_homedir(user);
- }
+ if (user)
+ return getuserhomedir(user);
pw = getpwuid(getuid());
- if (!pw) {
+ if (!pw)
die("Can't get current user home directory\n");
- }
+
return pw->pw_dir;
}
t@@ -386,19 +389,19 @@ char *
buildpath(const char *path)
{
char *apath, *name, *p, *fpath;
+ const char *homedir;
if (path[0] == '~') {
- const char *homedir;
if (path[1] == '/' || path[1] == '\0') {
p = (char *)&path[1];
- homedir = get_current_user_homedir();
+ homedir = getcurrentuserhomedir();
} else {
if ((p = strchr(path, '/')))
name = g_strndup(&path[1], --p - path);
else
name = g_strdup(&path[1]);
- homedir = get_user_homedir(name);
+ homedir = getuserhomedir(name);
g_free(name);
}
apath = g_build_filename(homedir, p, NULL);
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.