Change 17763 by [EMAIL PROTECTED] on 2002/08/23 12:23:31
#17747 caused bad free()s with PERL_DESTRUCT by calling newXS()
with a NULL subaddr. Fix that, and stop it happening again.
Affected files ...
.... //depot/perl/op.c#512 edit
.... //depot/perl/universal.c#55 edit
Differences ...
==== //depot/perl/op.c#512 (text) ====
Index: perl/op.c
--- perl/op.c#511~17725~ Fri Aug 16 17:51:19 2002
+++ perl/op.c Fri Aug 23 05:23:31 2002
@@ -5217,6 +5217,9 @@
GV_ADDMULTI, SVt_PVCV);
register CV *cv;
+ if (!subaddr)
+ Perl_croak(aTHX_ "panic: no address for '%s' in '%s'", name, filename);
+
if ((cv = (name ? GvCV(gv) : Nullcv))) {
if (GvCVGEN(gv)) {
/* just a cached method */
==== //depot/perl/universal.c#55 (text) ====
Index: perl/universal.c
--- perl/universal.c#54~17762~ Fri Aug 23 04:02:35 2002
+++ perl/universal.c Fri Aug 23 05:23:31 2002
@@ -192,7 +192,6 @@
sv_inc(sv);
SvSETMAGIC(sv);
/* Make it findable via fetchmethod */
- newXS("version::()", NULL, file);
newXS("version::new", XS_version_new, file);
newXS("version::(\"\"", XS_version_stringify, file);
newXS("version::stringify", XS_version_stringify, file);
End of Patch.