X-Spam-Check-By: sourceware.org Message-ID: <45A839A5.2030302@gmail.com> Date: Fri, 12 Jan 2007 18:45:09 -0700 From: Morgan Gangwere <0 DOT fractalus AT gmail DOT com> User-Agent: Thunderbird 1.5.0.9 (Windows/20061207) MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: command line arg expansion References: <004c01c73647$fe09c6e0$300b17ac AT sanmateo DOT corp DOT akamai DOT com> In-Reply-To: <004c01c73647$fe09c6e0$300b17ac@sanmateo.corp.akamai.com> OpenPGP: id=5231E2FA Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 jim wrote: > Morgan, > > What do you mean by: > >> isnt this because if the wildcard reading in 1.5.23? > > Is this something that has changed between 1.5.12 and 1.5.23? Maybe I'm > connecting two unrelated datapoints, but I noticed the problem because of a > perl script that looks like: > > open(LS, "ls -dF1 /c* | grep '/.*/' |"); > > This worked fine on older versions of Cygwin, but doesn't work any more. > In trying to figure out what was going on, I replaced grep with the program > to print out argv and noticed the difference. > > thanks, > jim > >> -----Original Message----- >> From: Morgan Gangwere [mailto:0 DOT fractalus AT gmail DOT com] >> Sent: Thursday, January 11, 2007 4:32 PM >> To: cygwin AT cygwin DOT com >> Subject: Re: command line arg expansion >> > jim wrote: >>>> I have recently upgraded from 1.5.12 to 1.5.23 and noticed > something that >>>> has me wondering. I compiled this on 1.5.23 and have run > it under cmd.exe >>>> on on 1.5.12 and 1.5.23: >>>> >>>> #include >>>> >>>> int main(int argc, char *argv[]) >>>> { >>>> int i, c; >>>> >>>> for (i = 0; i < argc; i++) >>>> printf("arg[%d]: '%s'\n", i, argv[i]); } >>>> >>>> On 1.5.12: >>>> C:\>e '/.*/' >>>> arg[0]: 'e' >>>> arg[1]: '/.*/' >>>> >>>> On 1.5.23: >>>> C:\>e '/.*/' >>>> arg[0]: 'e' >>>> arg[1]: '/../' >>>> arg[2]: '/./' >>>> arg[3]: '/.other/' >>>> >>>> It appears that the runtime initialization on 1.5.23 is > doing command line >>>> expansion - is this correct? If so, is this change > documented somewhere so >>>> I get the full explanation? >>>> >>>> thanks for any insight, >>>> jim >>>> >>>> >>>> >>>> -- >>>> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple >>>> Problem reports: http://cygwin.com/problems.html >>>> Documentation: http://cygwin.com/docs.html >>>> FAQ: http://cygwin.com/faq/ >>>> >>>> > isnt this because if the wildcard reading in 1.5.23? > > i have seen this several times, especially in this kind of program. > handle the argv[] as an array of real strings and you should > be fine TTBOMK i may have been confused. what shell are you running this from? -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (MingW32) iD8DBQFFqDmlXIyDjlIx4voRArStAJ94hgvkDJRrtUIZGrYAuGfvVlqQEwCgkvBV Ik0DJFYJ6wLIuDifaOBTkKU= =5e2i -----END PGP SIGNATURE----- -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/