X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=xs-src%2FMouseUtil.xs;h=d47ed8bfeeee05280b1f4fee7820420cc58f83a7;hb=0d615023d82778635c398300ecc6b518c35d4408;hp=828982857161ec3e8321fd99180deb1984aa9bcd;hpb=80aa5731d6763d8f38ba0fa057729af7026e6580;p=gitmo%2FMouse.git diff --git a/xs-src/MouseUtil.xs b/xs-src/MouseUtil.xs index 8289828..d47ed8b 100644 --- a/xs-src/MouseUtil.xs +++ b/xs-src/MouseUtil.xs @@ -21,8 +21,8 @@ mouse_mro_get_linear_isa(pTHX_ HV* const stash){ return isa; /* returns the cache if available */ } else{ - SvREADONLY_off(isa); - av_clear(isa); + SvREFCNT_dec(isa); + GvAV(cachegv) = isa = newAV(); } get_linear_isa = get_cv("Mouse::Util::get_linear_isa", TRUE); @@ -65,7 +65,7 @@ mouse_mro_get_linear_isa(pTHX_ HV* const stash){ } sv_setiv(gen, (IV)mro_get_pkg_gen(stash)); - return GvAV(cachegv); + return isa; } #endif /* !no_mor_get_linear_isa */