develooper Front page | perl.perl5.changes | Postings from January 2003

Change 18421: Fix long standing memory leak with pop and shift!

From:
Arthur Bergman
Date:
January 3, 2003 18:45
Subject:
Change 18421: Fix long standing memory leak with pop and shift!
Message ID:
200301040245.h042j6p19010@smtp3.ActiveState.com
Change 18421 by sky@sky-tibook on 2003/01/04 01:27:55

	Fix long standing memory leak with pop and shift!

Affected files ...

... //depot/perl/ext/threads/shared/shared.xs#30 edit

Differences ...

==== //depot/perl/ext/threads/shared/shared.xs#30 (text) ====
Index: perl/ext/threads/shared/shared.xs
--- perl/ext/threads/shared/shared.xs#29~17453~	Tue Jul  9 14:23:31 2002
+++ perl/ext/threads/shared/shared.xs	Fri Jan  3 17:27:55 2003
@@ -813,8 +813,9 @@
 	SHARED_CONTEXT;
 	sv = av_pop((AV*)SHAREDSvPTR(shared));
 	CALLER_CONTEXT;
-	ST(0) = Nullsv;
+	ST(0) = sv_newmortal();
 	Perl_sharedsv_associate(aTHX_ &ST(0), sv, 0);
+	SvREFCNT_dec(sv);
 	LEAVE_LOCK;
 	XSRETURN(1);
 
@@ -827,8 +828,9 @@
 	SHARED_CONTEXT;
 	sv = av_shift((AV*)SHAREDSvPTR(shared));
 	CALLER_CONTEXT;
-	ST(0) = Nullsv;
+	ST(0) = sv_newmortal();
 	Perl_sharedsv_associate(aTHX_ &ST(0), sv, 0);
+	SvREFCNT_dec(sv);
 	LEAVE_LOCK;
 	XSRETURN(1);
 
End of Patch.




nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About