archiver: Escape recipe name in regex

The recipe name needs to be escaped when using it in a regular expression so
that and special characters are treated literally

(From OE-Core rev: 53c8cceb744adda1bf899d62071d11b20a5dea98)

(From OE-Core rev: 5818fa4ddb1473b7d951ccb24f9953a011082312)

(From OE-Core rev: ed2d0781d3e991a7e0eb4bf7a04a9e91cd8793be)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Joshua Watt 2017-06-05 21:33:42 -05:00 committed by Richard Purdie
parent 779228d7a4
commit d9a4bee60c
1 changed files with 2 additions and 2 deletions

View File

@ -349,8 +349,8 @@ python do_ar_recipe () {
bbappend_files = d.getVar('BBINCLUDED').split()
# If recipe name is aa, we need to match files like aa.bbappend and aa_1.1.bbappend
# Files like aa1.bbappend or aa1_1.1.bbappend must be excluded.
bbappend_re = re.compile( r".*/%s_[^/]*\.bbappend$" %pn)
bbappend_re1 = re.compile( r".*/%s\.bbappend$" %pn)
bbappend_re = re.compile( r".*/%s_[^/]*\.bbappend$" % re.escape(pn))
bbappend_re1 = re.compile( r".*/%s\.bbappend$" % re.escape(pn))
for file in bbappend_files:
if bbappend_re.match(file) or bbappend_re1.match(file):
shutil.copy(file, outdir)