summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--perl-install/NEWS3
-rw-r--r--perl-install/run_program.pm3
2 files changed, 5 insertions, 1 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS
index dc9c3cb91..be16cb0e0 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -1,3 +1,6 @@
+- do not crash when trying to guess homedir before running another
+ process (mga#7403)
+
Version 14.21.2 - 5 September 2012
- autologin:
diff --git a/perl-install/run_program.pm b/perl-install/run_program.pm
index fbc721d82..2bd262c2a 100644
--- a/perl-install/run_program.pm
+++ b/perl-install/run_program.pm
@@ -61,7 +61,8 @@ sub raw {
$uid = $ENV{USERHELPER_UID} && getpwuid($ENV{USERHELPER_UID});
$uid ||= common::get_parent_uid();
$options->{setuid} = getpwnam($uid) if $uid;
- $home = $uid->[7] if $uid;
+ my ($full_user) = grep { $_->[2] eq $uid } list_passwd();
+ $home = $full_user->[7] if $full_user;
}
local $ENV{HOME} = $home if $home;