X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=ext%2FDB_File%2Ftypemap;h=55439ee76d91cbddd51d7a6023f01ef0463607a1;hb=103b575a610fa266138f0ab0655f26f83244bca8;hp=29dc778df74ff03a7293456f5996a437cb07ac71;hpb=9fe6733ac5627eddc014ed5f2afb208fa4afd501;p=p5sagit%2Fp5-mst-13.2.git diff --git a/ext/DB_File/typemap b/ext/DB_File/typemap index 29dc778..55439ee 100644 --- a/ext/DB_File/typemap +++ b/ext/DB_File/typemap @@ -1,8 +1,8 @@ # typemap for Perl 5 interface to Berkeley # # written by Paul Marquess -# last modified 20th March 1999 -# version 1.66 +# last modified 10th December 2000 +# version 1.74 # #################################### DB SECTION # @@ -16,22 +16,23 @@ DBTKEY T_dbtkeydatum INPUT T_dbtkeydatum ckFilter($arg, filter_store_key, \"filter_store_key\"); + DBT_clear($var) ; if (db->type != DB_RECNO) { $var.data = SvPV($arg, PL_na); $var.size = (int)PL_na; - DBT_flags($var); } else { - Value = GetRecnoKey(db, SvIV($arg)) ; + Value = GetRecnoKey(aTHX_ db, SvIV($arg)) ; $var.data = & Value; $var.size = (int)sizeof(recno_t); - DBT_flags($var); } T_dbtdatum ckFilter($arg, filter_store_value, \"filter_store_value\"); - $var.data = SvPV($arg, PL_na); - $var.size = (int)PL_na; - DBT_flags($var); + DBT_clear($var) ; + if (SvOK($arg)) { + $var.data = SvPV($arg, PL_na); + $var.size = (int)PL_na; + } OUTPUT