Le mercredi 09 janvier 2008 à 13:27 +0100, Andreas Färber a écrit : > Am 09.01.2008 um 13:08 schrieb Laurent Vivier: > > > Le mercredi 09 janvier 2008 à 11:40 +0100, andrzej zaborowski a > > écrit : > >> On 09/01/2008, Laurent Vivier <[EMAIL PROTECTED]> wrote: > >>> Le mercredi 09 janvier 2008 à 10:31 +0100, Laurent Vivier a écrit : > >>>> Le mardi 08 janvier 2008 à 17:17 +0100, Hervé Poussineau a écrit : > >>>>> Hi, > >>>>> > >>>>> On Windows, since December 2nd, files names provided in command > >>>>> line > >>>>> have to double their backslash to work correctly, for example: "- > >>>>> hda > >>>>> c:\\disks\\qemu.qcow" instead of -hda c:\disks\qemu.qcow" > >>>>> This patch removes this need and reverts back to Qemu 0.9.0 > >>>>> behaviour > >>>>> > >>>>> Hervé > >>>>> > >>>> > >>>> I have introduced this behavior to be able to use command line like > >>>> "qemu -hda my\ file", IMHO your patch should be #ifdef for window > >>>> only. > >>> > >>> In fact, this is a wrong example, this case is managed by the shell. > >>> A good example is when we have a filename with a '"' in it: > >>> > >>> qemu -hda 2\\\"file > >>> > >>> to open file 2"file > >> > >> And the correct behaviour for that would be to open the file > >> 2\"file, while > >> > >> qemu -hda 2\"file > >> > >> should open 2"file. The only character that we may need to handle > >> specially should be the comma, I don't know if anyone cares. > > > > You're right... > > but "-hda" is an alias for "-drive file="%s",index=%d,media=disk". > > > > So when you type "qemu -hda 2\"file", > > it becomes "qemu -drive file="2"file",index=0,media=disk" > > which gives filename equal to "2file,index=0,media=disk" instead of > > filename equal to 2"file with option index and media. > > > > So the '\' is needed, and you must have "qemu -hda 2\\\"file" to > > have "qemu -drive file="2\"file",index=0,media=disk" and then can > > extract filename to 2"file > > > > In the alias, file="%s" is needed to be able to manage filenames with > > spaces. for instance, if you don't have '"", you will have: > > qemu -hda "my file" > > -> qemu -drive file=my file,index=0,media=disk > > and thus filename is "my"... > > That's the classic SQL insertion problem. Can't you just have "
Yes, or when we use ssh to execute a command on a remote host. > replaced with \" before formatting it as "%s", like you'd do in PHP or > elsewhere? Well, as the string is already parsed in drive_init() to extract options, it seems logic to manage quotes there... Laurent -- ----------------- [EMAIL PROTECTED] ------------------ "La perfection est atteinte non quand il ne reste rien à ajouter mais quand il ne reste rien à enlever." Saint Exupéry
signature.asc
Description: Ceci est une partie de message numériquement signée