This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Update DB_File to CPAN version 1.822
authorChris 'BinGOs' Williams <chris@bingosnet.co.uk>
Wed, 18 May 2011 20:35:23 +0000 (21:35 +0100)
committerChris 'BinGOs' Williams <chris@bingosnet.co.uk>
Thu, 9 Jun 2011 11:17:10 +0000 (12:17 +0100)
  [DELTA]

  1.822 12 March 2011

   * Keep DB_File's warnings in sync with perl's
     [rt.cpan.org #66339]

Porting/Maintainers.pl
cpan/DB_File/Changes
cpan/DB_File/DB_File.pm
cpan/DB_File/t/db-btree.t
cpan/DB_File/t/db-hash.t
cpan/DB_File/t/db-recno.t

index f17a564..7b53215 100755 (executable)
@@ -519,7 +519,7 @@ use File::Glob qw(:case);
     'DB_File' =>
        {
        'MAINTAINER'    => 'pmqs',
-       'DISTRIBUTION'  => 'PMQS/DB_File-1.821.tar.gz',
+       'DISTRIBUTION'  => 'PMQS/DB_File-1.822.tar.gz',
        'FILES'         => q[cpan/DB_File],
        'EXCLUDED'      => [ qr{^patches/},
                             qw{ t/pod.t
index c7fbf16..79da038 100644 (file)
@@ -1,5 +1,10 @@
 
 
+1.822 12 March 2011
+
+   * Keep DB_File's warnings in sync with perl's
+     [rt.cpan.org #66339] 
+
 1.821 10 January 2011
 
    * Fixed typos & spelling errors.
index 7a47019..7b8755b 100644 (file)
@@ -161,16 +161,22 @@ package DB_File ;
 use warnings;
 use strict;
 our ($VERSION, @ISA, @EXPORT, $AUTOLOAD, $DB_BTREE, $DB_HASH, $DB_RECNO);
-our ($db_version, $use_XSLoader, $splice_end_array, $Error);
+our ($db_version, $use_XSLoader, $splice_end_array_no_length, $splice_end_array, $Error);
 use Carp;
 
 
-$VERSION = "1.821" ;
+$VERSION = "1.822" ;
 $VERSION = eval $VERSION; # needed for dev releases
 
 {
-    local $SIG{__WARN__} = sub {$splice_end_array = "@_";};
+    local $SIG{__WARN__} = sub {$splice_end_array_no_length = "@_";};
     my @a =(1); splice(@a, 3);
+    $splice_end_array_no_length = 
+        ($splice_end_array_no_length =~ /^splice\(\) offset past end of array at /);
+}      
+{
+    local $SIG{__WARN__} = sub {$splice_end_array = "@_";};
+    my @a =(1); splice(@a, 3, 1);
     $splice_end_array = 
         ($splice_end_array =~ /^splice\(\) offset past end of array at /);
 }      
@@ -342,6 +348,7 @@ sub SPLICE
        $offset = 0;
     }
 
+    my $has_length = @_;
     my $length = @_ ? shift : 0;
     # Carping about definedness comes _after_ the OFFSET sanity check.
     # This is so we get the same error messages as Perl's splice().
@@ -371,7 +378,7 @@ sub SPLICE
     if ($offset > $size) {
        $offset = $size;
        warnings::warnif('misc', 'splice() offset past end of array')
-            if $splice_end_array;
+            if $has_length ? $splice_end_array : $splice_end_array_no_length;
     }
 
     # 'If LENGTH is omitted, removes everything from OFFSET onward.'
index c0f6c57..29c70a1 100644 (file)
@@ -5,7 +5,7 @@ use strict;
 use Config;
  
 BEGIN {
-    if($ENV{PERL_CORE}) {
+    if(-d "lib" && -f "TEST") {
         if ($Config{'extensions'} !~ /\bDB_File\b/ ) {
             print "1..0 # Skip: DB_File was not built\n";
             exit 0;
index d78e664..f4c8f95 100644 (file)
@@ -1,11 +1,11 @@
 #!./perl 
+
 use warnings;
 use strict;
 use Config;
  
 BEGIN {
-    if($ENV{PERL_CORE}) {
+    if(-d "lib" && -f "TEST") {
         if ($Config{'extensions'} !~ /\bDB_File\b/ ) {
             print "1..0 # Skip: DB_File was not built\n";
             exit 0;
index 365abfd..404a060 100644 (file)
@@ -1,11 +1,11 @@
 #!./perl -w
+
 use warnings;
 use strict;
 use Config;
  
 BEGIN {
-    if($ENV{PERL_CORE}) {
+    if(-d "lib" && -f "TEST") {
         if ($Config{'extensions'} !~ /\bDB_File\b/ ) {
             print "1..0 # Skip: DB_File was not built\n";
             exit 0;