my ($toml, $mf_org_subdir) = @{ $manifests{$mf} };
foreach my $deps (get_dependency_tables $toml) {
next unless $deps;
- foreach my $p (keys %packagemap) {
- my $info = $deps->{$p};
- next unless defined $info;
+ foreach my $dep_key (keys %$deps) {
+ my $info = $deps->{$dep_key};
+ my $p = (ref $info ? $info->{package} : undef) // $dep_key;
+ next unless defined $packagemap{$p};
next if $packagemap{$p}[1] eq $mf_org_subdir;
- $deps->{$p} = $info = { } unless ref $info; # was just version
+ $deps->{$dep_key} = $info = { } unless ref $info; # was just version
my $oldpath = $info->{path};
delete $info->{version};
my $newpath = $worksphere.'/'.$packagemap{$p}[0];