Document code fragility.
authorEric S. Raymond <esr@thyrsus.com>
Mon, 22 Apr 2019 09:00:05 +0000 (05:00 -0400)
committerEric S. Raymond <esr@thyrsus.com>
Mon, 22 Apr 2019 09:02:27 +0000 (05:02 -0400)
sst.py

diff --git a/sst.py b/sst.py
index 17d85afd78591f109b4e91e53e57e67ec2095c46..763f903e969168606e852e5d186dabc510e852ed 100755 (executable)
--- a/sst.py
+++ b/sst.py
@@ -2862,7 +2862,9 @@ def supernova(w):
         game.iscate = False
         unschedule(FSCMOVE)
         unschedule(FSCDBAS)
-    survivors = filter(lambda w: w != nq, game.state.kcmdr)
+    # Changing this to [w for w in game.state.kcmdr if w != nq]
+    # causes regression-test failure
+    survivors = list(filter(lambda w: w != nq, game.state.kcmdr))
     comkills = len(game.state.kcmdr) - len(survivors)
     game.state.kcmdr = survivors
     if not game.state.kcmdr: