diff options
author | Florian Pritz <bluewind@xinu.at> | 2018-12-17 16:33:25 +0100 |
---|---|---|
committer | Florian Pritz <bluewind@xinu.at> | 2018-12-17 16:33:25 +0100 |
commit | f2b5d9bacf8e109fe27cea8f68232d41fd3b3ea5 (patch) | |
tree | 6f56fe0013bc8cb43d53a162f030adbf797af850 /lib/App/ArchLinux/PackagerTools/CPAN.pm | |
parent | 20e07437f413e338f2b54447133e1533f5262c13 (diff) | |
download | App-ArchLinux-PackagerTools-f2b5d9bacf8e109fe27cea8f68232d41fd3b3ea5.tar.gz App-ArchLinux-PackagerTools-f2b5d9bacf8e109fe27cea8f68232d41fd3b3ea5.tar.xz |
Make context parameter explicit
This prevents a loop in $deps->{..}->{context} which is 1) unnecessary
and 2) potentially breaks memory recovery when things get deleted. Not
the case right now, but whatever.
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Diffstat (limited to 'lib/App/ArchLinux/PackagerTools/CPAN.pm')
-rw-r--r-- | lib/App/ArchLinux/PackagerTools/CPAN.pm | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/App/ArchLinux/PackagerTools/CPAN.pm b/lib/App/ArchLinux/PackagerTools/CPAN.pm index de2a397..c48469a 100644 --- a/lib/App/ArchLinux/PackagerTools/CPAN.pm +++ b/lib/App/ArchLinux/PackagerTools/CPAN.pm @@ -37,20 +37,20 @@ Returns a new instance. =cut -method new($class: $deps = {}) { - $deps->{packages_details_fetcher} //= App::ArchLinux::PackagerTools::CPAN::PackagesDetailsFetcher->new({$deps->%{context}}); - return $class->new_no_defaults($deps); +method new($class: $context, $deps = {}) { + $deps->{packages_details_fetcher} //= App::ArchLinux::PackagerTools::CPAN::PackagesDetailsFetcher->new($context); + return $class->new_no_defaults($context, $deps); } -method new_no_defaults($class: $deps = {}) { - return $deps->{context}->{$class} if defined $deps->{context}->{$class}; +method new_no_defaults($class: $context, $deps = {}) { + return $context->{$class} if defined $context->{$class}; my $self = {}; bless $self, $class; $self->{deps} = $deps; $self->{dist_lc_map} = {}; $self->{dists} = {}; - $deps->{context}->{$class} = $self; + $context->{$class} = $self; $log->debug("Initialized new CPAN object"); return $self; } |