summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/pkgs.pm13
1 files changed, 9 insertions, 4 deletions
diff --git a/perl-install/pkgs.pm b/perl-install/pkgs.pm
index 9a3d6478b..35213e279 100644
--- a/perl-install/pkgs.pm
+++ b/perl-install/pkgs.pm
@@ -916,15 +916,20 @@ sub install($$$;$$) {
} while (scalar(@transToInstall) == 0); #- avoid null transaction, it a nop that cost a bit.
}
- #- reset file descriptor open too.
+ #- extract headers for parent as they are used by callback.
+ extractHeaders($prefix, \@transToInstall, $media->{$medium});
+
+ #- reset file descriptor open for main process but
+ #- make sure error trying to change from hdlist are
+ #- trown from main process too.
+ install_any::getFile(packageFile($transToInstall[0]));
+ #- and make sure there are no staling open file descriptor too!
install_any::getFile('XXX');
+
#- reset ftp handlers before forking, otherwise well ;-(
require ftp;
ftp::rewindGetFile();
- #- extract headers for parent as they are used by callback.
- extractHeaders($prefix, \@transToInstall, $media->{$medium});
-
local (*INPUT, *OUTPUT); pipe INPUT, OUTPUT;
if (my $pid = fork()) {
close OUTPUT;