Decode max timestamp (= forever) as DateTime.MaxValue

This commit is contained in:
Wizou 2021-10-17 03:18:36 +02:00
parent 80edb184bc
commit 4b1ae1c5e0

View file

@ -185,10 +185,13 @@ namespace TL
}
internal static void WriteTLStamp(this BinaryWriter writer, DateTime datetime)
=> writer.Write((uint)(datetime.ToUniversalTime().Ticks / 10000000 - 62135596800L));
=> writer.Write(datetime == DateTime.MaxValue ? int.MaxValue : (int)(datetime.ToUniversalTime().Ticks / 10000000 - 62135596800L));
internal static DateTime ReadTLStamp(this BinaryReader reader)
=> new((reader.ReadUInt32() + 62135596800L) * 10000000, DateTimeKind.Utc);
{
int unixstamp = reader.ReadInt32();
return unixstamp == int.MaxValue ? DateTime.MaxValue : new((unixstamp + 62135596800L) * 10000000, DateTimeKind.Utc);
}
internal static void WriteTLString(this BinaryWriter writer, string str)
{