aboutsummaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorStefan Eßer <se@FreeBSD.org>2020-11-01 20:38:35 +0000
committerStefan Eßer <se@FreeBSD.org>2020-11-01 20:38:35 +0000
commitab34af07462164f2aab8418ff35fb4ac63ae0815 (patch)
treef70e8df4e36252db63af4b1c3f364b019d672570 /usr.bin
parenta97cfe08a7a89a6ca9c34806145b03cae99c0cf8 (diff)
downloadsrc-ab34af07462164f2aab8418ff35fb4ac63ae0815.tar.gz
src-ab34af07462164f2aab8418ff35fb4ac63ae0815.zip
Fix psoition reporting for calendar data file in system directory
MFC after: 3 days
Notes
Notes: svn path=/head/; revision=367255
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/calendar/io.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/usr.bin/calendar/io.c b/usr.bin/calendar/io.c
index 41037cfc2d5b..3c9024b1d103 100644
--- a/usr.bin/calendar/io.c
+++ b/usr.bin/calendar/io.c
@@ -147,10 +147,22 @@ cal_fopen(const char *file)
return (NULL);
}
+static char*
+cal_path(void)
+{
+ static char buffer[MAXPATHLEN + 10];
+
+ if (cal_dir[0] == '/')
+ snprintf(buffer, sizeof(buffer), "%s/%s", cal_dir, cal_file);
+ else
+ snprintf(buffer, sizeof(buffer), "%s/%s/%s", cal_home, cal_dir, cal_file);
+ return (buffer);
+}
+
#define WARN0(format) \
- warnx(format " in %s/%s/%s line %d", cal_home, cal_dir, cal_file, cal_line)
+ warnx(format " in %s line %d", cal_path(), cal_line)
#define WARN1(format, arg1) \
- warnx(format " in %s/%s/%s line %d", arg1, cal_home, cal_dir, cal_file, cal_line)
+ warnx(format " in %s line %d", arg1, cal_path(), cal_line)
static int
token(char *line, FILE *out, int *skip, int *unskip)