X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Futil%2Fload.c;h=9bbea6c140401dd0a24411640fdded63a5e1ecd0;hb=46ac0cea02fe1949d76b86c7a0750f9e7854fef6;hp=3f03e32e7392719c6c5fe453b567428b1768e058;hpb=63267491ed45e12a9b50be5c8b0b32811d95c1e2;p=oweals%2Fgnunet.git diff --git a/src/util/load.c b/src/util/load.c index 3f03e32e7..9bbea6c14 100644 --- a/src/util/load.c +++ b/src/util/load.c @@ -86,12 +86,18 @@ internal_update (struct GNUNET_LOAD_Value *load) struct GNUNET_TIME_Relative delta; unsigned int n; - if (load->autodecline.value == GNUNET_TIME_UNIT_FOREVER_REL.value) + if (load->autodecline.rel_value == GNUNET_TIME_UNIT_FOREVER_REL.rel_value) return; delta = GNUNET_TIME_absolute_get_duration (load->last_update); - if (delta.value < load->autodecline.value) + if (delta.rel_value < load->autodecline.rel_value) return; - n = delta.value / load->autodecline.value; + if (load->autodecline.rel_value == 0) + { + load->runavg_delay = 0.0; + load->load = 0; + return; + } + n = delta.rel_value / load->autodecline.rel_value; if (n > 16) { load->runavg_delay = 0.0; @@ -121,8 +127,6 @@ GNUNET_LOAD_value_init (struct GNUNET_TIME_Relative autodecline) ret = GNUNET_malloc (sizeof (struct GNUNET_LOAD_Value)); ret->autodecline = autodecline; - if (ret->autodecline.value == 0) - ret->autodecline.value = 1; ret->last_update = GNUNET_TIME_absolute_get (); return ret; } @@ -140,8 +144,6 @@ GNUNET_LOAD_value_set_decline (struct GNUNET_LOAD_Value *load, { internal_update (load); load->autodecline = autodecline; - if (load->autodecline.value == 0) - load->autodecline.value = 1; }