sources/docker.py: Handle opaque whiteout files
Opaque whiteouts hide the contents of their corresponding directories
in lower layers, but not the directories themselves.[0]
The implementation could be likely be optimized by implementing a
data structure that keeps a nested list of files for each directory,
but the focus of this change was correctness. The current
implementation only adds a few seconds of processing overhead to
images that take more than 10 minutes to be extracted, so it should
be good enough for now.
[0] https://specs.opencontainers.org/image-spec/layer/#opaque-whiteout
1 file changed