summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOrestis Floros <orestisflo@gmail.com>2020-05-01 12:16:59 +0200
committerOrestis Floros <orestisflo@gmail.com>2020-05-01 12:20:34 +0200
commit94d10968c94ad1a13392db1e17ed26265336fd33 (patch)
treea3ae4727d1d4032a48d558bb2edcbd21ac58dc3a
parentd8e8eb2eef04443d3489d79cf5bf02d8ee2373c2 (diff)
print_file_contents: Resolve tilde
Fixes #350
-rw-r--r--src/general.c1
-rw-r--r--src/print_file_contents.c6
2 files changed, 4 insertions, 3 deletions
diff --git a/src/general.c b/src/general.c
index c089126..6036b69 100644
--- a/src/general.c
+++ b/src/general.c
@@ -18,7 +18,6 @@
die(__VA_ARGS__); \
}
-
/*
* Reads size bytes into the destination buffer from filename.
*
diff --git a/src/print_file_contents.c b/src/print_file_contents.c
index 37701f1..b66321a 100644
--- a/src/print_file_contents.c
+++ b/src/print_file_contents.c
@@ -19,11 +19,13 @@ void print_file_contents(yajl_gen json_gen, char *buffer, const char *title, con
char *outwalk = buffer;
char *buf = scalloc(max_chars * sizeof(char) + 1);
- int n = -1;
- int fd = open(path, O_RDONLY);
+ char *abs_path = resolve_tilde(path);
+ int fd = open(abs_path, O_RDONLY);
+ free(abs_path);
INSTANCE(path);
+ int n = -1;
if (fd > -1) {
n = read(fd, buf, max_chars);
if (n != -1) {