Added return values to lock()/unlock() and reinstated _close()
rkinyon [Sat, 18 Feb 2006 12:52:31 +0000 (12:52 +0000)]
lib/DBM/Deep.pm
t/23_misc.t

index beb015a..6c8e831 100644 (file)
@@ -302,10 +302,8 @@ sub _close {
        ##
        # Close database FileHandle
        ##
-#    my $self = _get_self($_[0]);
-#    undef $self->root->{fh};
-    #XXX Should it be this??
-    #close $self->root->{fh};
+    my $self = _get_self($_[0]);
+    close $self->root->{fh};
 }
 
 sub _create_tag {
@@ -919,7 +917,11 @@ sub lock {
        if ($self->root->{locking}) {
                if (!$self->root->{locked}) { flock($self->fh, $type); }
                $self->root->{locked}++;
+
+        return 1;
        }
+
+    return;
 }
 
 sub unlock {
@@ -932,7 +934,11 @@ sub unlock {
        if ($self->root->{locking} && $self->root->{locked} > 0) {
                $self->root->{locked}--;
                if (!$self->root->{locked}) { flock($self->fh, LOCK_UN); }
+
+        return 1;
        }
+
+    return;
 }
 
 #XXX These uses of ref() need verified
index e206ff3..343979a 100644 (file)
@@ -32,7 +32,7 @@ throws_ok {
 } qr/^DBM::Deep: Signature not found -- file is not a Deep DB/, "Only DBM::Deep DB files will be opened";
 
 TODO: {
-    todo_skip "lock() doesn't check to see if the file is open", 1;
+    local $TODO = "lock() doesn't check to see if the file is open";
     my $db = DBM::Deep->new(
         file => 't/test.db',
         locking => 1,
@@ -42,7 +42,7 @@ TODO: {
 }
 
 TODO: {
-    todo_skip "unlock() doesn't check to see if the file is open", 1;
+    local $TODO = "unlock() doesn't check to see if the file is open";
     my $db = DBM::Deep->new(
         file => 't/test.db',
         locking => 1,