Author: REHSACK
Date: Mon Nov 12 06:45:50 2012
New Revision: 15473
Modified:
dbi/branches/sqlengine/lib/DBD/File.pm
Log:
fix using of STDOUT for flock() availability check even when STDOUT isn't an
opened filehandle
Modified: dbi/branches/sqlengine/lib/DBD/File.pm
==============================================================================
--- dbi/branches/sqlengine/lib/DBD/File.pm (original)
+++ dbi/branches/sqlengine/lib/DBD/File.pm Mon Nov 12 06:45:50 2012
@@ -403,7 +403,14 @@
# We may have a working flock () built-in but that doesn't mean that locking
# will work on NFS (flock () may hang hard)
-my $locking = eval { flock STDOUT, 0; 1 };
+my $locking = eval {
+ my $fh;
+ my $nulldevice = File::Spec->devnull();
+ open( $fh, ">", $nulldevice ) or die "Can't open $nulldevice: $!";
+ flock $fh, 0;
+ close $fh;
+ 1
+ };
use Carp;