Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

jk2addict (4946)

  (email not shown publicly)
AOL IM: chrislaco (Add Buddy, Send Message)
Yahoo! ID: (Add User, Send Message)

Journal of jk2addict (4946)

Monday December 31, 2007
02:59 PM

File::Temp, Directory::Scratch and -T

[ #35253 ]

I'm posting this so maybe someone else will learn from my pain. I just spent an hour trying to figure out why Directory::Scratch and File::Temp were creating temp directorys in $ENV{TMP} on one test script under Win32, and in the cwd() on another script.

Of course, the answer is that one test has -T, and one does not. With tainting on of course, there is no ENV (TMP/TEMP), so the cwd() is used. It makes sense, but in a way feels like a bug.

At the very least, maybe that should be a big fat warning on the File::Temp pod.

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • If you do it soon enough, it will end up it 5.10.1!

  • It says pretty clearly that it creates a directory in tmpdir -- and references File::Spec. And File::Spec clearly cites tainting. What's so surprising?

    I think you need to ask yourself why you're running tests in taint mode. Are you testing something that specifically involves taint mode? If so, great. If not -- and you're doing it "just because", then you're setting yourself up to be surprised when the computer goes ahead and does exactly what you asked it to do.

    I used to see this a lot on Windows wher
    • Well, RTFM is a funny thing...the farther away from the module you're using, the less he lack RTFMing is the users fault. As a user of Directory::Scratch, should I have to RTFM three to four levels deep to find one mention of tempdir producing two different results when in and out of taint mode?

      As far as running tests under taint mode, I do it for one reason only: to sooner find our what doesn't work under taint mode. There is nothing more frustrating than trying to turn on Taint in Apache/ModPerl instance,