From e8d57afddfc331861bd33304ea4cd54d36d1b95e Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Sat, 13 Nov 2010 11:59:10 -0600 Subject: error checking on hv_store --- Stash.xs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Stash.xs b/Stash.xs index 78b395f..2fc0613 100644 --- a/Stash.xs +++ b/Stash.xs @@ -277,9 +277,11 @@ new(class, package_name) instance = newHV(); - hv_store(instance, "name", 4, SvREFCNT_inc_simple_NN(package_name), 0); + if (!hv_store(instance, "name", 4, SvREFCNT_inc_simple_NN(package_name), 0)) + croak("Couldn't initialize the 'name' key, hv_store failed"); namespace = gv_stashpv(SvPV_nolen(package_name), GV_ADD); - hv_store(instance, "namespace", 9, newRV_inc((SV*)namespace), 0); + if (!hv_store(instance, "namespace", 9, newRV_inc((SV*)namespace), 0)) + croak("Couldn't initialize the 'namespace' key, hv_store failed"); RETVAL = sv_bless(newRV_noinc((SV*)instance), gv_stashpv(class, 0)); OUTPUT: -- cgit v1.2.3-54-g00ecf