From: Markus Armbruster Date: Sun, 23 Oct 2016 16:38:56 +0000 (+0200) Subject: contact: Avoid unnecessary nation updates X-Git-Tag: v4.4.0~93 X-Git-Url: http://git.pond.sub.org/?p=empserver;a=commitdiff_plain;h=e61c332295045786a83ce7fcb830cbbcecb85c65 contact: Avoid unnecessary nation updates Make setcont() update the nation only when it actually changes the contact value. For added benefit, map all non-zero values to one when option LOSE_CONTACT is disabled. This saves I/O, in particular xdump bandwidth. Signed-off-by: Markus Armbruster --- diff --git a/src/lib/subs/rej.c b/src/lib/subs/rej.c index de11e8171..bf8882d19 100644 --- a/src/lib/subs/rej.c +++ b/src/lib/subs/rej.c @@ -123,9 +123,12 @@ setcont(natid us, natid them, int contact) if (CANT_HAPPEN(contact > 255)) contact = 255; - if (np->nat_contact[them] < contact) + if (!opt_LOSE_CONTACT) + contact = !!contact; + if (np->nat_contact[them] < contact) { np->nat_contact[them] = contact; - putnat(np); + putnat(np); + } } void