summaryrefslogtreecommitdiffstats
path: root/Stash.xs
diff options
context:
space:
mode:
authorFlorian Ragwitz <rafl@debian.org>2010-11-13 14:53:57 +0100
committerJesse Luehrs <doy@tozt.net>2010-11-13 08:55:41 -0600
commit93c3641704fd13c31076e8dc090405d5783100d4 (patch)
tree4c84a358b16d90cc33593158052358f929b5887f /Stash.xs
parent63bb451509a2171d4e90f78088ce4b2b23da5ee1 (diff)
downloadpackage-stash-xs-93c3641704fd13c31076e8dc090405d5783100d4.tar.gz
package-stash-xs-93c3641704fd13c31076e8dc090405d5783100d4.zip
Be explicit about refcounts, thereby fixing one leak
Diffstat (limited to 'Stash.xs')
-rw-r--r--Stash.xs8
1 files changed, 4 insertions, 4 deletions
diff --git a/Stash.xs b/Stash.xs
index f7d2c95..f66b4a7 100644
--- a/Stash.xs
+++ b/Stash.xs
@@ -278,9 +278,9 @@ new(class, package_name)
hv_store(instance, "name", 4, package_name, 0);
namespace = gv_stashpv(SvPV_nolen(package_name), GV_ADD);
- hv_store(instance, "namespace", 9, newRV((SV*)namespace), 0);
+ hv_store(instance, "namespace", 9, newRV_noinc((SV*)namespace), 0);
- RETVAL = sv_bless(newRV((SV*)instance), gv_stashpv(class, 0));
+ RETVAL = sv_bless(newRV_inc((SV*)instance), gv_stashpv(class, 0));
OUTPUT:
RETVAL
@@ -462,7 +462,7 @@ get_package_symbol(self, variable)
val = _get_package_symbol(self, &variable, 0);
if (!val)
XSRETURN_UNDEF;
- RETVAL = newRV(val);
+ RETVAL = newRV_inc(val);
OUTPUT:
RETVAL
@@ -476,7 +476,7 @@ get_or_add_package_symbol(self, variable)
val = _get_package_symbol(self, &variable, 1);
if (!val)
XSRETURN_UNDEF;
- RETVAL = newRV(val);
+ RETVAL = newRV_inc(val);
OUTPUT:
RETVAL