summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2010-11-13 11:59:10 -0600
committerJesse Luehrs <doy@tozt.net>2010-11-13 11:59:10 -0600
commite8d57afddfc331861bd33304ea4cd54d36d1b95e (patch)
tree9621d343853e2314ba561e80f7b0cccff887d576
parenta2fec41abc1808cd11a14d974dfc6eda8b0f541c (diff)
downloadpackage-stash-xs-e8d57afddfc331861bd33304ea4cd54d36d1b95e.tar.gz
package-stash-xs-e8d57afddfc331861bd33304ea4cd54d36d1b95e.zip
error checking on hv_store
-rw-r--r--Stash.xs6
1 files 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: