As I found out the hard way on windows, file system related functions like stat or the file test operators would not work in general with funny file path strings that have the flag UTF8 set. Of course, if you compare such a variable with the literal string without a set UTF8 flag, they are reported as equal, but the effect with e.g. -f is different!
The only documentation I could find was in utf8, which I only found after I had analyzed the variable with Devel::Peek::Dump and then realized it was a UTF8 related effect.
My solution was to utf8::downgrade the string variable before using it with the above operators, which fixed my original problem.
But then I thought, wouldn't Perl be better, if the file system related functions would ensure this by calling utf8::downgrade() on (a copy of) the file path string themselves?
Before I suggest this as an improvement at Perl porters, I would like know, if there are any points/arguments/use cases against that suggestion?
Thanks for any enlightenments!
In reply to utf8::downgrade() and file system operators by hexcoder
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |