summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/perl/ext/GDBM_File
diff options
context:
space:
mode:
authormillert <millert@openbsd.org>2001-05-24 18:34:40 +0000
committermillert <millert@openbsd.org>2001-05-24 18:34:40 +0000
commitc5dcfd37a3164fb53e0dfad8933a4e7c5f31c639 (patch)
tree3be355f56e8f30e0beb22d375a75a1e8ca129d25 /gnu/usr.bin/perl/ext/GDBM_File
parentstock perl 5.6.1 (diff)
downloadwireguard-openbsd-c5dcfd37a3164fb53e0dfad8933a4e7c5f31c639.tar.xz
wireguard-openbsd-c5dcfd37a3164fb53e0dfad8933a4e7c5f31c639.zip
merge in perl 5.6.1 with our local changes
Diffstat (limited to 'gnu/usr.bin/perl/ext/GDBM_File')
-rw-r--r--gnu/usr.bin/perl/ext/GDBM_File/GDBM_File.pm4
-rw-r--r--gnu/usr.bin/perl/ext/GDBM_File/typemap10
2 files changed, 11 insertions, 3 deletions
diff --git a/gnu/usr.bin/perl/ext/GDBM_File/GDBM_File.pm b/gnu/usr.bin/perl/ext/GDBM_File/GDBM_File.pm
index ab866eecabe..310243c736e 100644
--- a/gnu/usr.bin/perl/ext/GDBM_File/GDBM_File.pm
+++ b/gnu/usr.bin/perl/ext/GDBM_File/GDBM_File.pm
@@ -40,6 +40,7 @@ L<perl(1)>, L<DB_File(3)>, L<perldbmfilter>.
package GDBM_File;
use strict;
+use warnings;
our($VERSION, @ISA, @EXPORT, $AUTOLOAD);
require Carp;
@@ -53,13 +54,14 @@ use XSLoader ();
GDBM_FAST
GDBM_INSERT
GDBM_NEWDB
+ GDBM_NOLOCK
GDBM_READER
GDBM_REPLACE
GDBM_WRCREAT
GDBM_WRITER
);
-$VERSION = "1.03";
+$VERSION = "1.05";
sub AUTOLOAD {
my($constname);
diff --git a/gnu/usr.bin/perl/ext/GDBM_File/typemap b/gnu/usr.bin/perl/ext/GDBM_File/typemap
index 4f79ae3e32a..1dd063003ab 100644
--- a/gnu/usr.bin/perl/ext/GDBM_File/typemap
+++ b/gnu/usr.bin/perl/ext/GDBM_File/typemap
@@ -19,8 +19,14 @@ T_DATUM_K
$var.dsize = (int)PL_na;
T_DATUM_V
ckFilter($arg, filter_store_value, \"filter_store_value\");
- $var.dptr = SvPV($arg, PL_na);
- $var.dsize = (int)PL_na;
+ if (SvOK($arg)) {
+ $var.dptr = SvPV($arg, PL_na);
+ $var.dsize = (int)PL_na;
+ }
+ else {
+ $var.dptr = \"\";
+ $var.dsize = 0;
+ }
OUTPUT
T_DATUM_K
output_datum(aTHX_ $arg, $var.dptr, $var.dsize);