]> git.pond.sub.org Git - empserver/commit
Don't execute pre-write checks from sct_postread()
authorMarkus Armbruster <armbru@pond.sub.org>
Sat, 6 Sep 2008 12:03:08 +0000 (08:03 -0400)
committerMarkus Armbruster <armbru@pond.sub.org>
Tue, 9 Sep 2008 01:25:12 +0000 (21:25 -0400)
commit85eb288f9788e40d19989391f47032ff7507af89
treedaba94044d33cb5ccd8b0f0ed6602219295b8257
parentf84d25378b8b6c71f00f2660f961c7fae6c7d1b6
Don't execute pre-write checks from sct_postread()

Chainsaw 3 factored out most checks from sct_prewrite() into
checksect(), and called that from sct_postread() as well.  Revert
this, because it was a bad idea: whenever checksect() called from
ef_read() found something to change, it was actually a bug, and
changing it just hid the bug from whatever called ef_read().  But it
couldn't hide it from code going through ef_ptr().  So, instead of
having bugs visible everywhere, including census and such, they were
hidden in hard to observe places.  For instance, the previous commit
fixed one that was visible to the path finder, but not the actual path
user, which led to the path user choking on an incorrect path in a
rather obscure manner.

Things no longer "corrected" on read: excessive mobility, low work
despite no civilians present, sector owned despite neither civilians,
military nor land units.  The latter had a scary-looking caploss(),
but NF_SACKED should have rendered that harmless.
src/lib/subs/sect.c