Skip to content

Commit

Permalink
added some null safety
Browse files Browse the repository at this point in the history
  • Loading branch information
David Morasz committed Aug 11, 2019
1 parent 8f3a244 commit 780d1c4
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 2 deletions.
6 changes: 5 additions & 1 deletion AttachedValuesNodes.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ public void Evaluate(int SpreadMax)
for (int i = 0; i < FElement.SliceCount; i++)
{
var element = FElement[i];
if (element == null) continue;
if (element.Value == null)
{
FVals[i].SliceCount = FTexts[i].SliceCount = FAuxKeys[i].SliceCount = FAuxVals[i].SliceCount = 0;
Expand Down Expand Up @@ -72,6 +73,7 @@ public void Evaluate(int SpreadMax)
for (int i = 0; i < FElement.SliceCount; i++)
{
var element = FElement[i];
if (element == null) continue;
if (element.Value == null)
{
element.Value = new AttachedValues();
Expand Down Expand Up @@ -114,6 +116,7 @@ public void Evaluate(int SpreadMax)
for (int i = 0; i < FElement.SliceCount; i++)
{
var element = FElement[i];
if(element == null) continue;
if (element.Value == null)
{
element.Value = new AttachedValues();
Expand Down Expand Up @@ -181,7 +184,8 @@ public void Evaluate(int SpreadMax)

for (int i = 0; i < FElement.SliceCount; i++)
{
if(FElement[i].Value != null)
if (FElement[i] == null) continue;
if (FElement[i].Value != null)
{
if(FElement[i].Value.Auxiliary.Count > 0)
{
Expand Down
1 change: 1 addition & 0 deletions ElementInfoNode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,7 @@ public class GuiElementInfoNode : IPluginEvaluate

protected void AssignElementOutputs(NotuiElement element, int i)
{
if (element == null) return;
if (element.EnvironmentObject is VEnvironmentData venvdat)
{
TouchesOut[i] = venvdat.Touches;
Expand Down
3 changes: 2 additions & 1 deletion SubContextNodes.cs
Original file line number Diff line number Diff line change
Expand Up @@ -140,10 +140,11 @@ public void Evaluate(int SpreadMax)
for (int j = 0; j < FElements[i].SliceCount; j++)
{
if (FElements[i][j] == null) continue;
if (_prevElements[i].Contains(FElements[i][j])) continue;
if (_prevElements[i]?.Contains(FElements[i][j]) ?? true) continue;
FElements[i][j].IsChanged = ElementNodeUtils.ChangedFrames;
}

if(_prevElements[i] == null) _prevElements[i] = new Spread<ElementPrototype>();
_prevElements[i].AssignFrom(FElements[i]);

if (_areElementsChanged > 0 && FAutoUpdateElements[i] || FUpdateElements[i])
Expand Down

0 comments on commit 780d1c4

Please sign in to comment.