commit b9a4746b54cd4159941e4bb4650d75cb26a84a25 Author: Oswald Buddenhagen <o...@users.sf.net> Date: Mon Jul 4 18:03:24 2022 +0200
don't refresh progress counters pointlessly the mainloop-based refresh timer keeps spinning even if there is no update. overload stats_steps to signal whether a refresh is needed. amends 8fbc4323. src/main_sync.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main_sync.c b/src/main_sync.c index 88baae2..24a88c9 100644 --- a/src/main_sync.c +++ b/src/main_sync.c @@ -43,9 +43,11 @@ print_stats( void ) static void stats_timeout( void *aux ATTR_UNUSED ) { - stats_steps = -1; + if (stats_steps != -1) { + stats_steps = -1; + print_stats(); + } conf_wakeup( &stats_wakeup, 200 ); - print_stats(); } void @@ -55,8 +57,10 @@ stats( void ) return; // If the main loop appears to be running, skip the sync path. - if (stats_steps < 0) + if (stats_steps < 0) { + stats_steps = -2; return; + } // Rate-limit the (somewhat) expensive timer queries. if (++stats_steps < 10) _______________________________________________ isync-devel mailing list isync-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/isync-devel