|
|
@@ -93,7 +93,32 @@ public partial class LicenseRenewalForm : ThemableWindow, IDynamicEditorHost
|
|
|
|
|
|
public DateTime NewExpiration
|
|
|
{
|
|
|
- get => RenewalDate.AddMonths(RenewalPeriod);
|
|
|
+ get
|
|
|
+ {
|
|
|
+ // Extra logic to prevent overflow of dates
|
|
|
+ if(RenewalPeriod > 0)
|
|
|
+ {
|
|
|
+ if(RenewalDate >= DateTime.MaxValue.AddMonths(-RenewalPeriod))
|
|
|
+ {
|
|
|
+ return DateTime.MaxValue;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return RenewalDate.AddMonths(RenewalPeriod);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ if (RenewalDate <= DateTime.MinValue.AddMonths(-RenewalPeriod))
|
|
|
+ {
|
|
|
+ return DateTime.MinValue;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ return RenewalDate.AddMonths(RenewalPeriod);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
public List<LicenseTrackingItem> LicenseItems { get; private set; }
|