Message ID | 20240131120438.1097632-1-alex@linutronix.de |
---|---|
State | Accepted, archived |
Commit | 78d22c80c3f3a9f82c9f0d3dd1c591d395e02918 |
Headers | show |
Series | [1/2] classes/package_rpm: additionally escape \ and " in filenames | expand |
On 31/01/2024 13:04:37+0100, Alexander Kanavin wrote: > As specified in: > https://github.com/rpm-software-management/rpm/blob/rpm-4.19.x/docs/manual/spec.md#shell-globbing > > Signed-off-by: Alexander Kanavin <alex@linutronix.de> > --- > meta/classes-global/package_rpm.bbclass | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/meta/classes-global/package_rpm.bbclass b/meta/classes-global/package_rpm.bbclass > index 819ee502783..c9354734756 100644 > --- a/meta/classes-global/package_rpm.bbclass > +++ b/meta/classes-global/package_rpm.bbclass > @@ -217,7 +217,7 @@ python write_specfile () { > return "%attr({:o},{},{}) ".format(mode, owner, group) > > def escape_chars(p): > - return p.replace("%", "%%") > + return p.replace("%", "%%").replace("\\", "\\\\").replace('"', '\\"')) File "/home/pokybuild/yocto-worker/build-appliance/build/meta/classes-global/package_rpm.bbclass", line 220 return p.replace("%", "%%").replace("\\", "\\\\").replace('"', '\\"')) ^ SyntaxError: unmatched ')' > > path = rootpath.replace(walkpath, "") > if path.endswith("DEBIAN") or path.endswith("CONTROL"): > -- > 2.39.2 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#194515): https://lists.openembedded.org/g/openembedded-core/message/194515 > Mute This Topic: https://lists.openembedded.org/mt/104073360/3617179 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com] > -=-=-=-=-=-=-=-=-=-=-=- >
On Thu, 1 Feb 2024 at 01:02, Alexandre Belloni <alexandre.belloni@bootlin.com> wrote: > > - return p.replace("%", "%%") > > + return p.replace("%", "%%").replace("\\", "\\\\").replace('"', '\\"')) > > File "/home/pokybuild/yocto-worker/build-appliance/build/meta/classes-global/package_rpm.bbclass", line 220 > return p.replace("%", "%%").replace("\\", "\\\\").replace('"', '\\"')) > ^ > SyntaxError: unmatched ')' > Thanks, I sent a corrected patchset now. Alex
diff --git a/meta/classes-global/package_rpm.bbclass b/meta/classes-global/package_rpm.bbclass index 819ee502783..c9354734756 100644 --- a/meta/classes-global/package_rpm.bbclass +++ b/meta/classes-global/package_rpm.bbclass @@ -217,7 +217,7 @@ python write_specfile () { return "%attr({:o},{},{}) ".format(mode, owner, group) def escape_chars(p): - return p.replace("%", "%%") + return p.replace("%", "%%").replace("\\", "\\\\").replace('"', '\\"')) path = rootpath.replace(walkpath, "") if path.endswith("DEBIAN") or path.endswith("CONTROL"):
As specified in: https://github.com/rpm-software-management/rpm/blob/rpm-4.19.x/docs/manual/spec.md#shell-globbing Signed-off-by: Alexander Kanavin <alex@linutronix.de> --- meta/classes-global/package_rpm.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)