aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-09-17 09:04:46 +0200
committerDanilo M. <danix@danix.xyz>2026-09-17 09:04:46 +0200
commit53d39b7212ffe0753d2b10ea39348bc033f06bef (patch)
treebe756f5cf2e3d4e1b303b05637924e1224ff2d96 /widgets
parent752b58b3992d1a9cfb51c891deb77007286415ee (diff)
downloadconky-theme-udt-53d39b7212ffe0753d2b10ea39348bc033f06bef.tar.gz
conky-theme-udt-53d39b7212ffe0753d2b10ea39348bc033f06bef.zip
fix: guard now, and clamp a negative age, in the staleness pair
is_stale and age_str were the only functions in the module doing arithmetic on an unchecked argument: a nil `now` raised, and a raise in this project is a blank dashboard with no message. Every caller passes os.time(), which cannot be nil, so this was unreachable, but it is the same bug already fixed once in icon() and the module header promises nothing raises. age_str also printed a negative age when the observation timestamp was in the future, which a clock skew can produce. "stale -17m" on the card reads as a broken widget, so the age now floors at zero and such a reading counts as fresh: weather from the future is not old. With this the whole module is raise-free, verified across every function against nil, string, table, boolean, NaN, negative and zero arguments in all three positions. Both cases were found by the Task 5 implementer, which was asked to probe beyond its given tests and reported them without changing the code. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Diffstat (limited to 'widgets')
0 files changed, 0 insertions, 0 deletions