[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [E-devel] Ecore_exe and shell metacharachters



On Wed, 05 Apr 2006 12:24:37 -0400 Mike Russo <miker@readq.com> wrote:

> Ecore_exe will try to avoid using "sh -c" to execute a program if it 
> can.  If the command line contains shell meta characters (defined as
> any combination of |&;<>$'\"'*?#) it will use the user's shell to
> execute the command, otherwise it will execute it directly.
> 
> Unfortunately this causes a problem if the user's shell is csh/tcsh
> and the command line contains a ? character. I noticed this problem
> because dEvian's RSS face uses ecore_exe in order to launch a web
> browser with the URL as the command line argument, and if the URL
> contains a ? ecore_exe will try to use tcsh to execute it, and this
> will only work if the ? is escaped with a \.  Not even including the
> command line between single quotes
> 
> Not really sure what the best way to fix this would be though. The 
> simple solution of enclosing the command line in single quotes does
> not work.  I think if the command line is parsed and all meta
> characters are escaped it will work with any shell, but I'm too lazy
> to implement that. :(  Just wanted to report it, I'll probably change
> my shell or edit ecore_exe.c to use /bin/sh instead of my shell to
> work around it until someone less lazy then myself can fix it. :)

I'll take a look at it, see if I can figure out a fix.

Attachment: signature.asc
Description: PGP signature