diff options
Diffstat (limited to 'scripts/lib/wic')
-rw-r--r-- | scripts/lib/wic/plugins/source/rootfs.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/scripts/lib/wic/plugins/source/rootfs.py b/scripts/lib/wic/plugins/source/rootfs.py index 85c634f8a1..247f61ff7c 100644 --- a/scripts/lib/wic/plugins/source/rootfs.py +++ b/scripts/lib/wic/plugins/source/rootfs.py | |||
@@ -136,7 +136,6 @@ class RootfsPlugin(SourcePlugin): | |||
136 | sys.exit(1) | 136 | sys.exit(1) |
137 | 137 | ||
138 | full_path = os.path.realpath(os.path.join(new_rootfs, path)) | 138 | full_path = os.path.realpath(os.path.join(new_rootfs, path)) |
139 | |||
140 | # Disallow climbing outside of parent directory using '..', | 139 | # Disallow climbing outside of parent directory using '..', |
141 | # because doing so could be quite disastrous (we will delete the | 140 | # because doing so could be quite disastrous (we will delete the |
142 | # directory). | 141 | # directory). |
@@ -144,6 +143,9 @@ class RootfsPlugin(SourcePlugin): | |||
144 | logger.error("'%s' points to a path outside the rootfs" % orig_path) | 143 | logger.error("'%s' points to a path outside the rootfs" % orig_path) |
145 | sys.exit(1) | 144 | sys.exit(1) |
146 | 145 | ||
146 | if not os.path.lexists(full_path): | ||
147 | continue | ||
148 | |||
147 | if path.endswith(os.sep): | 149 | if path.endswith(os.sep): |
148 | # Delete content only. | 150 | # Delete content only. |
149 | for entry in os.listdir(full_path): | 151 | for entry in os.listdir(full_path): |