Opened 11 years ago

Closed 11 years ago

Last modified 9 years ago

#496 closed defect (wontfix)

shell egg doesn't properly quote command lines

Reported by: Moritz Heidkamp Owned by: felix winkelmann
Priority: major Milestone: 4.9.0
Component: extensions Version: 4.6.x
Keywords: egg shell Cc:
Estimated difficulty:

Description

The shell egg doesn't properly quote command lines. For example

(run ("grep" "foo bar"))

will fail with

grep: bar: No such file or directory

i.e. it passes the single argument as two arguments. The attached patch fixes that by using posix {{process-run}} with a separate argument list and additionally cleans up dependencies and exports.

Attachments (1)

shell-escaping.patch (1.5 KB) - added by Moritz Heidkamp 11 years ago.

Download all attachments as: .zip

Change History (7)

Changed 11 years ago by Moritz Heidkamp

Attachment: shell-escaping.patch added

comment:1 Changed 11 years ago by felix winkelmann

But does this allow argument expansion usually done by the shell?

comment:2 Changed 11 years ago by Moritz Heidkamp

I'm not sure what you mean with argument expansion. Can you give an example?

comment:3 in reply to:  2 Changed 11 years ago by felix winkelmann

Replying to syn:

I'm not sure what you mean with argument expansion. Can you give an example?

Is this passed to the shell or is the process called directly. I assume the latter, which would not be right. The run command does no automatic escaping, use qs for that. In other words, it is known and intended to not escape. Perhaps this should be documented more thoroughly.

comment:4 Changed 11 years ago by felix winkelmann

Resolution: wontfix
Status: newclosed

comment:5 Changed 11 years ago by felix winkelmann

Milestone: 4.7.04.8.0

Milestone 4.7.0 deleted

comment:6 Changed 9 years ago by felix winkelmann

Milestone: 4.8.04.9.0

Milestone 4.8.0 deleted

Note: See TracTickets for help on using tickets.