https://bz.apache.org/SpamAssassin/show_bug.cgi?id=8044

--- Comment #39 from RvdH <[email protected]> ---
(In reply to Henrik Krohns from comment #35)
> I see ArchiveIterator.pm has it's own workarounds
> 
>       # No $HOME set?  Try to find it, portably.
>       unless ($home) {
>         if (!Mail::SpamAssassin::Util::am_running_on_windows()) {
>           $home = (Mail::SpamAssassin::Util::portable_getpwuid($<))[7];
>         } else {
>           my $vol = $ENV{'HOMEDRIVE'} || 'C:';
>           my $dir = $ENV{'HOMEPATH'} || '\\';
>           $home = File::Spec->catpath($vol, $dir, '');
>         }
> 
> Looks perhaps more like that portable_getpwuid itself should implement
> something like this.
> 
> Sorry this bug starts to get messy with multiple problems and patches.
> Hopefully Sidney or someone can sort these out to maybe own bugs for easier
> voting.

That else statement is specifically for Windows? 
ALLUSERSAPPDATA seems more appropriate,
https://docs.microsoft.com/en-us/windows/deployment/usmt/usmt-recognized-environment-variables

> The file-system directory that contains application data for all users. A 
> typical > path Windows is C:\ProgramData.

my $vol = $ENV{'HOMEDRIVE'} || 'C:';
my $dir = $ENV{'ALLUSERSAPPDATA'} || '\\';
$home = File::Spec->catpath($vol, $dir, '');

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to