public Entry(Area area, Entry parent, DirectoryInfo info, string canonicalName, bool ignored)
{
Parent = parent;
Area = area;
CanonicalName = canonicalName;
DirectoryInfo = info;
ModificationTime = DirectoryInfo.LastWriteTimeUtc;
Ignored = ignored;
m_Hash = string.Empty;
if (info.Attributes.HasFlag(FileAttributes.Hidden))
Attributes = Attributes | Objects.Attributes.Hidden;
if (info.Attributes.HasFlag(FileAttributes.ReadOnly))
Attributes = Attributes | Objects.Attributes.ReadOnly;
if (Utilities.Symlink.Exists(info))
{
Attributes = Attributes | Objects.Attributes.Symlink;
if (CanonicalName.EndsWith("/"))
CanonicalName = canonicalName.Substring(0, canonicalName.Length - 1);
}
}