- Stirb verfing sich in Endlosschleife

This commit is contained in:
Christian Schlittchen 2002-05-12 07:29:28 +00:00
parent fe02040e2f
commit abfd233486
1 changed files with 12 additions and 5 deletions

View File

@ -1122,20 +1122,22 @@ void
quit(void)
{
region *r;
unit *u;
strlist *S;
unit *u, *un;
strlist *S, *Sn;
faction *f;
const race * frace;
/* Sterben erst nachdem man allen anderen gegeben hat - bzw. man kann
* alles machen, was nicht ein dreißigtägiger Befehl ist. */
for (r = regions; r; r = r->next)
for (u = r->units; u; u = u->next)
for (S = u->orders; S; S = S->next)
for (r = regions; r; r = r->next) {
for (u = r->units; u;) {
un = u->next;
for (S = u->orders; S; S = S->next) {
if (igetkeyword(S->s, u->faction->locale) == K_QUIT) {
if (checkpasswd(u->faction, getstrtoken())) {
destroyfaction(u->faction);
break;
} else {
cmistake(u, S->s, 86, MSG_EVENT);
printf(" Warnung: STIRB mit falschem Passwort für Partei %s: %s\n",
@ -1179,6 +1181,11 @@ quit(void)
continue;
}
restart(u, frace);
break;
}
}
u = un;
}
}
puts(" - beseitige Spieler, die sich zu lange nicht mehr gemeldet haben...");