diff options
author | Matthias Wachs <wachs@net.in.tum.de> | 2014-05-08 14:54:32 +0000 |
---|---|---|
committer | Matthias Wachs <wachs@net.in.tum.de> | 2014-05-08 14:54:32 +0000 |
commit | 09794f7d0dc2fe43878b88d0d65eb053e3928419 (patch) | |
tree | fafa9f8c480c2a6ec9c0c50ceb6b0a334edf7369 /src/ats/gnunet-service-ats_normalization.c | |
parent | c8bee99b7ac37d2c29bb9b36c6c2650f2f3907b8 (diff) | |
download | gnunet-09794f7d0dc2fe43878b88d0d65eb053e3928419.tar.gz gnunet-09794f7d0dc2fe43878b88d0d65eb053e3928419.zip |
only call callback on change
Diffstat (limited to 'src/ats/gnunet-service-ats_normalization.c')
-rw-r--r-- | src/ats/gnunet-service-ats_normalization.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/ats/gnunet-service-ats_normalization.c b/src/ats/gnunet-service-ats_normalization.c index fd09a262f..f29646260 100644 --- a/src/ats/gnunet-service-ats_normalization.c +++ b/src/ats/gnunet-service-ats_normalization.c | |||
@@ -726,13 +726,18 @@ normalize_address (void *cls, const struct GNUNET_PeerIdentity *h, void *k) | |||
726 | { | 726 | { |
727 | struct Property *p = cls; | 727 | struct Property *p = cls; |
728 | struct ATS_Address *address = k; | 728 | struct ATS_Address *address = k; |
729 | |||
730 | double delta; | 729 | double delta; |
731 | uint32_t avg_value = address->atsin[p->prop_type].avg; | 730 | double backup; |
731 | uint32_t avg_value; | ||
732 | 732 | ||
733 | backup = address->atsin[p->prop_type].norm; | ||
734 | avg_value = address->atsin[p->prop_type].avg; | ||
733 | delta = p->max - p->min; | 735 | delta = p->max - p->min; |
734 | address->atsin[p->prop_type].norm = (delta + (avg_value - p->min)) / (delta); | 736 | address->atsin[p->prop_type].norm = (delta + (avg_value - p->min)) / (delta); |
735 | 737 | ||
738 | if (backup == address->atsin[p->prop_type].norm) | ||
739 | return GNUNET_OK; | ||
740 | |||
736 | LOG(GNUNET_ERROR_TYPE_DEBUG, | 741 | LOG(GNUNET_ERROR_TYPE_DEBUG, |
737 | "Normalize `%s' address %p's '%s' with value %u to range [%u..%u] = %.3f\n", | 742 | "Normalize `%s' address %p's '%s' with value %u to range [%u..%u] = %.3f\n", |
738 | GNUNET_i2s (&address->peer), address, | 743 | GNUNET_i2s (&address->peer), address, |