2015-11-16 19:32 GMT+01:00 Ben Gardner email@example.com:
What is the purpose behind continuing if a bad entry is encountered? It appears that a 'bad' entry only occurs at the end of the CBFS.
With a properly chained CBFS, there are no such entries (except one at the end, maybe), and large empty regions are simply skipped because there's an empty file entry.
Since we're in firmware with few recovery options, we don't want the computer to die with a black screen if all that happened may be some minor corruption in a data structure, and so we do a best-effort recovery by trying to find a new entry point into the chain. The theory being that it can't get worse.