If a checksummed target A used to exist but is now missing, and we tried to redo-ifchange that exact file, we would unnecessarily run 'redo-oob A A'; that is, we have to build A in order to determine if A needs to be built. The sub-targets of redo-oob aren't run with REDO_UNLOCKED, so this would deadlock instantly. Add an assertion to redo-oob to ensure we never try to redo-ifchange the primary target (thus converting the deadlock into an exception). And skip doing redo-oob when the target is already the same as the thing we have to check. |
||
|---|---|---|
| .. | ||
| .gitignore | ||
| bob.do | ||
| clean.do | ||
| stamptest.do | ||
| stampy.do | ||
| test.do | ||
| usestamp.do | ||
| usestamp2.do | ||