Reorganize constants handling, add escapes for fork-less OSes
[dbsrgits/DBIx-Class.git] / t / lib / DBICTest.pm
index 58f5cca..c330d67 100644 (file)
@@ -9,7 +9,7 @@ use DBICTest::Util qw/populate_weakregistry assert_empty_weakregistry local_umas
 use Carp;
 use Path::Class::File ();
 use File::Spec;
-use Fcntl qw/:flock/;
+use Fcntl qw/:DEFAULT :flock/;
 
 =head1 NAME
 
@@ -60,11 +60,11 @@ our ($global_lock_fh, $global_exclusive_lock);
 sub import {
     my $self = shift;
 
-    my $lockpath = File::Spec->tmpdir . '/.dbictest_global.lock';
+    my $lockpath = DBICTest::RunMode->tmpdir->file('.dbictest_global.lock');
 
     {
       my $u = local_umask(0); # so that the file opens as 666, and any user can lock
-      open ($global_lock_fh, '>', $lockpath)
+      sysopen ($global_lock_fh, $lockpath, O_RDWR|O_CREAT)
         or die "Unable to open $lockpath: $!";
     }
 
@@ -189,7 +189,7 @@ sub _database {
 }
 
 sub __mk_disconnect_guard {
-  return if DBIx::Class::_ENV_::PEEPEENESS(); # leaks handles, delaying DESTROY, can't work right
+  return if DBIx::Class::_ENV_::PEEPEENESS; # leaks handles, delaying DESTROY, can't work right
 
   my $db_file = shift;
   return unless -f $db_file;