commit b9a4746b54cd4159941e4bb4650d75cb26a84a25
Author: Oswald Buddenhagen <[email protected]>
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/isync-devel