A little more information gleaned by experiment, as I stil have yet to find any documentation on this. MS or otherwise. YAROSF! (Yet Another Redmond-Only Secret Feature!)

After a some more thunking and chundering, I discovered that both '<' and '>' are "special" when used in filenames passed to the Find(First|Next)File() APIs.

There is a difference but in typical fashion, it is incredibly hard to define. It only seems to come into play when there are two (or more?) '.'s in the wildcard spec. This is a far from comprehensive expose of the possibilities, but unless someone else can find some rhythm or reason to the pattern matching possibilities of this, its going to be like the CLI quoting rules, too damn complex to work out, never mind to try and remember and apply usefully.

In terms of bypassing this 'feature', I think I would opt for something like

$filespec =~ s/(^[<>+|\s]+) | ([<>+|\s]+$)//;

Which I think will deal with any two-arg open adornments without changing the native behaviour or unnecessarily limiting the range of ligitimate filespecs you handle.

It strikes me that it should be left to the calling code to decide if the values they pass in to you should be untainted or not.


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller
If I understand your problem, I can solve it! Of course, the same can be said for you.


In reply to Re: Unexpected file test (-f) result on Windows by BrowserUk
in thread Unexpected file test (-f) result on Windows by DaveH

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.