summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Lohmann <20h@r-36.net>2016-06-03 15:14:53 +0200
committerChristoph Lohmann <20h@r-36.net>2016-06-03 15:14:53 +0200
commit31ec0fb93d84e7d9f324340de790076e78911b11 (patch)
tree54a753339b0ca11512f6349cf23f0b2e84f28896
parent1308872b8bd7a2516d0626955abe391af076e711 (diff)
downloadsurf-31ec0fb93d84e7d9f324340de790076e78911b11.tar.gz
surf-31ec0fb93d84e7d9f324340de790076e78911b11.tar.bz2
surf-31ec0fb93d84e7d9f324340de790076e78911b11.zip
Fixing the last patch to the surf style.
-rw-r--r--surf.c33
1 files changed, 18 insertions, 15 deletions
diff --git a/surf.c b/surf.c
index 46b0ce8..7fcd17e 100644
--- a/surf.c
+++ b/surf.c
@@ -115,6 +115,8 @@ static void addaccelgroup(Client *c);
static void beforerequest(WebKitWebView *w, WebKitWebFrame *f,
WebKitWebResource *r, WebKitNetworkRequest *req,
WebKitNetworkResponse *resp, Client *c);
+static const char *getuserhomedir(const char *user);
+static const char *getcurrentuserhomedir(void);
static char *buildfile(const char *path);
static char *buildpath(const char *path);
static gboolean buttonrelease(WebKitWebView *web, GdkEventButton *e, Client *c);
@@ -288,34 +290,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;
}
@@ -323,19 +326,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);