This repository was archived by the owner on Dec 31, 2025. It is now read-only.
Bugfix: Escaped rel_path in restore_attributes() when used in grep -E regexes #10
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
vendor_a.imgcontained a file named/lib64/libc++.so.fs-config(which was correct), however after repacking it would somehow end up with a gid of 2000rel_pathin restore_attributes() would get set to the value"/lib64/libc++.so"and then used in the line:stored_context=$(grep -E "^${rel_path} " "$FILE_CONTEXTS_FILE" | head -n1 | awk '{$1=""; print $0}' | sed 's/^ //')grep -E "^/lib64/libc++.so "would be treated as a regular expression, the++would get interpreted as regex characters and the whole grep expression would return nothing, thus failing to restore the original context on the file.This PR proposes a fix. It basically just escapes the special characters in
rel_path.