diff options
author | Adrian M. Enache <enache@rdslink.ro> | 2003-04-02 08:02:42 +0300 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2003-04-19 19:40:22 +0000 |
commit | 39cff0d9bacec3b7c45b12560665095ba3be16b2 (patch) | |
tree | dfbfd756019e90ca6d3f1e88a83da454b9a4b9ff /universal.c | |
parent | abc667d141be9d100fa9e0402f7809147d1f69b9 (diff) | |
download | perl-39cff0d9bacec3b7c45b12560665095ba3be16b2.tar.gz |
Fix bug #21347 (segfault in UNIVERSAL::AUTOLOAD with qr//)
by adding a dummy destructor method Regexp::DESTROY.
This prevents infinite recursion, since Regexp::DESTROY
is no more autoloaded.
Subject: Re: [perl #21347] segfault in UNIVERSAL::AUTOLOAD
Message-ID: <20030402020242.GA2966@ratsnest.hole>
p4raw-id: //depot/perl@19277
Diffstat (limited to 'universal.c')
-rw-r--r-- | universal.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/universal.c b/universal.c index 24621d20fc..e7889fb1fd 100644 --- a/universal.c +++ b/universal.c @@ -182,6 +182,7 @@ XS(XS_Internals_SvREADONLY); XS(XS_Internals_SvREFCNT); XS(XS_Internals_hv_clear_placehold); XS(XS_PerlIO_get_layers); +XS(XS_Regexp_DESTROY); void Perl_boot_core_UNIVERSAL(pTHX) @@ -222,6 +223,7 @@ Perl_boot_core_UNIVERSAL(pTHX) XS_Internals_hv_clear_placehold, file, "\\%"); newXSproto("PerlIO::get_layers", XS_PerlIO_get_layers, file, "*;@"); + newXS("Regexp::DESTROY", XS_Regexp_DESTROY, file); } @@ -723,6 +725,11 @@ XS(XS_Internals_hv_clear_placehold) XSRETURN(0); } +XS(XS_Regexp_DESTROY) +{ + +} + XS(XS_PerlIO_get_layers) { dXSARGS; |