--- /dev/null
+From af548c1f885e46309baa6aa175a3822fd16afb2a Mon Sep 17 00:00:00 2001
+From: Moritz Warning <moritzwarning@web.de>
+Date: Thu, 14 Mar 2019 17:19:40 +0100
+Subject: [PATCH] fix invalid pointer when clock is turned back
+
+---
+ src/util.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/util.c b/src/util.c
+index 621062d..77228bf 100644
+--- a/src/util.c
++++ b/src/util.c
+@@ -362,14 +362,14 @@ format_duration(time_t from, time_t to, char buf[64])
+ {
+ int days, hours, minutes, seconds;
+ long long int secs;
++ const char *neg = "";
+
+ if (from <= to) {
+ secs = to - from;
+ } else {
+ secs = from - to;
+ // Prepend minus sign
+- buf[0] = '-';
+- buf += 1;
++ neg = "-";
+ }
+
+ days = secs / (24 * 60 * 60);
+@@ -381,13 +381,13 @@ format_duration(time_t from, time_t to, char buf[64])
+ seconds = secs;
+
+ if (days > 0) {
+- sprintf(buf, "%dd %dh %dm %ds", days, hours, minutes, seconds);
++ snprintf(buf, 64, "%s%dd %dh %dm %ds", neg, days, hours, minutes, seconds);
+ } else if (hours > 0) {
+- sprintf(buf, "%dh %dm %ds", hours, minutes, seconds);
++ snprintf(buf, 64, "%s%dh %dm %ds", neg, hours, minutes, seconds);
+ } else if (minutes > 0) {
+- sprintf(buf, "%dm %ds", minutes, seconds);
++ snprintf(buf, 64, "%s%dm %ds", neg, minutes, seconds);
+ } else {
+- sprintf(buf, "%ds", seconds);
++ snprintf(buf, 64, "%s%ds", neg, seconds);
+ }
+
+ return buf;
+--
+2.20.1
+