From f609bed96103fc154c19b633e04ebad24e0df51e Mon Sep 17 00:00:00 2001 From: pacien Date: Thu, 5 Jan 2023 21:21:05 +0100 Subject: [PATCH] helpers: fix non-atomic cache write This was causing some values to be repeated more than once when using multiple tmux windows at the same time, for example for the RAM percentage in ram_percentage.sh. GitHub: fixes #62 --- scripts/helpers.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/helpers.sh b/scripts/helpers.sh index b669418..c5b5f37 100644 --- a/scripts/helpers.sh +++ b/scripts/helpers.sh @@ -130,8 +130,10 @@ put_cache_val() { val="${*:2}" tmpdir="$(get_tmp_dir)" [ ! -d "$tmpdir" ] && mkdir -p "$tmpdir" && chmod 0700 "$tmpdir" - get_time >"$tmpdir/$key" - echo -n "$val" >>"$tmpdir/$key" + ( + get_time + echo -n "$val" + ) >"$tmpdir/$key" echo -n "$val" }