wire: Fix announcement rejection for and from deities

Announcement rejection is completely broken for deities.
Additionally, deity announcements aren't exempted from rejection, but
that should not normally matter, because the reject command doesn't
let you reject deities.

Broken when announcements were separated from telegrams in Empire 3.
Fix to test the sender's instead of the player's divinity.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
This commit is contained in:
Markus Armbruster 2016-10-31 10:56:24 +01:00
parent 36fa303f49
commit 7878e4131f

View file

@ -31,7 +31,7 @@
* Doug Hay, 1998 * Doug Hay, 1998
* Steve McClure, 1998-2000 * Steve McClure, 1998-2000
* Ron Koenderink, 2005-2007 * Ron Koenderink, 2005-2007
* Markus Armbruster, 2009-2011 * Markus Armbruster, 2009-2016
*/ */
#include <config.h> #include <config.h>
@ -107,7 +107,8 @@ rea(void)
if (res <= 0) if (res <= 0)
break; break;
if (*kind == 'a') { if (*kind == 'a') {
if ((!player->god && (getrejects(tgm.tel_from, np) & REJ_ANNO)) if ((getnatp(tgm.tel_from)->nat_stat != STAT_GOD
&& (getrejects(tgm.tel_from, np) & REJ_ANNO))
|| tgm.tel_date < then) { || tgm.tel_date < then) {
res = tel_read_body(telfp, mbox, &tgm, NULL, NULL); res = tel_read_body(telfp, mbox, &tgm, NULL, NULL);
if (res < 0) if (res < 0)