don't crash on stupid stuff

This commit is contained in:
Michael Becker 2025-03-06 16:15:02 -05:00
parent 3c056486f8
commit 3d0e92c1e4

View File

@ -592,6 +592,8 @@ public abstract class Oms
} }
public InstanceHandle GetParentClass(IInstanceReference ir) public InstanceHandle GetParentClass(IInstanceReference ir)
{
if (ir != null)
{ {
InstanceHandle relInstance__for__Class = GetInstance(KnownRelationshipGuids.Instance__for__Class); InstanceHandle relInstance__for__Class = GetInstance(KnownRelationshipGuids.Instance__for__Class);
IEnumerable<InstanceHandle> irs = GetRelatedInstances(ir.GetHandle(), relInstance__for__Class); IEnumerable<InstanceHandle> irs = GetRelatedInstances(ir.GetHandle(), relInstance__for__Class);
@ -599,6 +601,11 @@ public abstract class Oms
{ {
return irs.First(); return irs.First();
} }
}
else
{
}
return InstanceHandle.Empty; return InstanceHandle.Empty;
} }
@ -1113,6 +1120,12 @@ public abstract class Oms
InstanceHandle assignsToParm = GetRelatedInstance(parm, GetInstance(KnownRelationshipGuids.Parameter_Assignment__assigns_to__Work_Data)); InstanceHandle assignsToParm = GetRelatedInstance(parm, GetInstance(KnownRelationshipGuids.Parameter_Assignment__assigns_to__Work_Data));
IInstanceReference assignsFromWorkData = GetRelatedInstance(parm, GetInstance(KnownRelationshipGuids.Parameter_Assignment__assigns_from__Executable_returning_Work_Data)); IInstanceReference assignsFromWorkData = GetRelatedInstance(parm, GetInstance(KnownRelationshipGuids.Parameter_Assignment__assigns_from__Executable_returning_Work_Data));
if (assignsFromWorkData == null)
{
Console.Error.WriteLine("oms: error: assigns from work data not set for parameter assignment '{0}'", parm.GlobalIdentifier);
continue;
}
if (IsInstanceOf(assignsFromWorkData, GetInstance(KnownInstanceGuids.Classes.Class))) if (IsInstanceOf(assignsFromWorkData, GetInstance(KnownInstanceGuids.Classes.Class)))
{ {
assignsFromWorkData = context.GetWorkData<IInstanceReference>(assignsFromWorkData); assignsFromWorkData = context.GetWorkData<IInstanceReference>(assignsFromWorkData);