From 58ed2b211a1add5fb2cb3750af6074c4d51c307a Mon Sep 17 00:00:00 2001 From: small_5 <61473216+small-5@users.noreply.github.com> Date: Thu, 4 Mar 2021 10:50:25 +0800 Subject: luci-app-ddns: fix update time calculation * Fix last_update overflow * Fix next_update wrong when the router is just started * Fix missing check_seconds for next_update Signed-off-by: Small_5 <61473216+small-5@users.noreply.github.com> --- applications/luci-app-ddns/root/usr/libexec/rpcd/luci.ddns | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'applications/luci-app-ddns/root/usr/libexec') diff --git a/applications/luci-app-ddns/root/usr/libexec/rpcd/luci.ddns b/applications/luci-app-ddns/root/usr/libexec/rpcd/luci.ddns index 36c6bdf269..22abcf4251 100755 --- a/applications/luci-app-ddns/root/usr/libexec/rpcd/luci.ddns +++ b/applications/luci-app-ddns/root/usr/libexec/rpcd/luci.ddns @@ -109,15 +109,15 @@ local methods = { tonumber(s["force_interval"]) or 72, s["force_unit"] or "hours" ) - -- process running but update needs to happen - -- problems if force_seconds > uptime - force_seconds = (force_seconds > uptime) and uptime or force_seconds + local check_seconds = calc_seconds( + tonumber(s["check_interval"]) or 10, + s["check_unit"] or "minutes" ) if last_update > 0 then - local epoch = os.time() - uptime + last_update + force_seconds + local epoch = os.time() - uptime + last_update -- use linux date to convert epoch converted_last_update = epoch2date(epoch,date_format) - next_update = epoch2date(epoch + force_seconds) + next_update = epoch2date(epoch + force_seconds + check_seconds) end if pid > 0 and ( last_update + force_seconds - uptime ) <= 0 then -- cgit v1.2.3