mirror of
https://github.com/PowerShell/PowerShell
synced 2026-06-08 12:12:50 +00:00
Fix for issue on raspbian for setting date of file changes in UnixStat Experimental Feature (#11313)
This commit is contained in:
committed by
Dongbo Wang
parent
55b572be7b
commit
bcc5acb0bd
@@ -864,9 +864,36 @@ namespace System.Management.Automation
|
||||
cs.GroupId = css.GroupId;
|
||||
cs.HardlinkCount = css.HardlinkCount;
|
||||
cs.Size = css.Size;
|
||||
cs.AccessTime = DateTime.UnixEpoch.AddSeconds(css.AccessTime).ToLocalTime();
|
||||
cs.ModifiedTime = DateTime.UnixEpoch.AddSeconds(css.ModifiedTime).ToLocalTime();
|
||||
cs.StatusChangeTime = DateTime.UnixEpoch.AddSeconds(css.StatusChangeTime).ToLocalTime();
|
||||
|
||||
// These can sometime throw if we get too large a number back (seen on Raspbian).
|
||||
// As a fallback, set the time to UnixEpoch.
|
||||
try
|
||||
{
|
||||
cs.AccessTime = DateTime.UnixEpoch.AddSeconds(css.AccessTime).ToLocalTime();
|
||||
}
|
||||
catch
|
||||
{
|
||||
cs.AccessTime = DateTime.UnixEpoch.ToLocalTime();
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
cs.ModifiedTime = DateTime.UnixEpoch.AddSeconds(css.ModifiedTime).ToLocalTime();
|
||||
}
|
||||
catch
|
||||
{
|
||||
cs.ModifiedTime = DateTime.UnixEpoch.ToLocalTime();
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
cs.StatusChangeTime = DateTime.UnixEpoch.AddSeconds(css.StatusChangeTime).ToLocalTime();
|
||||
}
|
||||
catch
|
||||
{
|
||||
cs.StatusChangeTime = DateTime.UnixEpoch.ToLocalTime();
|
||||
}
|
||||
|
||||
cs.BlockSize = css.BlockSize;
|
||||
cs.DeviceId = css.DeviceId;
|
||||
cs.NumberOfBlocks = css.NumberOfBlocks;
|
||||
|
||||
Reference in New Issue
Block a user