New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
panic: attempt to copy freed scalar #15086
Comments
From @KES777Created by @KES777$ perl -d:KillPrint -e 0 $cat Devel/KillPrint.pm our $VERSION = '0.01'; sub import { use Devel::DebugHooks; 1; $cat Devel/DebugHooks.pm our $VERSION = '0.01'; sub import { package # hide the package from the PAUSE indexer sub frames { sub DB { sub trace_subs { my( $args, @frame ) = DB::frames( $level ); sub sub { 1; PS. This were another tuturial question. Perl Info
|
From @KES777if in sub frames I add line: sub frames { In this case I do not get panic |
From [Unknown Contact. See original ticket]if in sub frames I add line: sub frames { In this case I do not get panic |
From @tonycozOn Thu Dec 10 09:24:41 2015, kes-kes@yandex.ua wrote:
@DB::args is a very low-level copy of the subroutine arguments, it doesn't keep reference counts to those arguments, so if you use @DB::args when the sub call that was used to populate it has returned, its values are invalid. Your code is attemptting to use values in @DB::args from the *previous* call to caller(), for which the subroutine has returned. If you ensure caller() is called before you use @DB::args: sub frames { there's no crash. Tony |
The RT System itself - Status changed from 'new' to 'open' |
@tonycoz - Status changed from 'open' to 'rejected' |
Migrated from rt.perl.org#126872 (status was 'rejected')
Searchable as RT126872$
The text was updated successfully, but these errors were encountered: