B2023-072: Crash when restoring annotation whose type had been removed
This commit is contained in:
parent
fe270e55c7
commit
be72063a3c
@ -1704,8 +1704,9 @@ namespace VEPROMS.CSLA.Library
|
||||
try
|
||||
{
|
||||
AnnotationInfo tmp = DataPortal.Fetch<AnnotationInfo>(new RestoreCriteria(aai));
|
||||
// B2023 - 073: Crash when restoring annotation whose type had been removed (if no record return null)
|
||||
if (tmp.ErrorMessage == "No Record Found") return null;
|
||||
AddToCache(tmp);
|
||||
if (tmp.ErrorMessage == "No Record Found") tmp = null;
|
||||
tmp.MyItem.RefreshItemAnnotations();
|
||||
return tmp;
|
||||
}
|
||||
|
@ -827,6 +827,16 @@ namespace Volian.Controls.Library
|
||||
if (FlexibleMessageBox.Show(this, "Do you want to restore this annotation?", "Confirm Annotation Restore", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
AnnotationInfo ai = AnnotationInfo.RestoreAnnotation(aai);
|
||||
// B2023-072: Don't crash if annotation type was deleted for the restore annotation
|
||||
if (ai == null)
|
||||
{
|
||||
AnnotationTypeInfo ati = AnnotationTypeInfo.Get(aai.TypeID);
|
||||
if (ati == null)
|
||||
{
|
||||
FlexibleMessageBox.Show(this, "Annotation Type was deleted, cannot restore Annotation Type\r\nCopy text from window in Change Details and paste into new annotation to restore the text.", "Annotation Type Deleted", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
}
|
||||
return;
|
||||
}
|
||||
OnAnnotationRestored(ai, ai.MyItem);
|
||||
RefreshRequired = true;
|
||||
UpdateHistory();
|
||||
|
Loading…
x
Reference in New Issue
Block a user