Skip to content

Commit b59dd2f

Browse files
committed
fix leaf node check
1 parent 18ada8c commit b59dd2f

4 files changed

Lines changed: 15 additions & 1 deletion

File tree

BakingSheet.Tests/Tests/ReferenceTests.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ public void TestReference()
4343
_container.Tests.Add(testRow);
4444

4545
_container.PostLoad();
46+
_container.Verify();
4647

4748
_logger.VerifyNoError();
4849

@@ -88,6 +89,7 @@ public void TestNestedReference()
8889
_container.Tests.Add(testRow2);
8990

9091
_container.PostLoad();
92+
_container.Verify();
9193

9294
_logger.VerifyNoError();
9395

@@ -116,6 +118,7 @@ public void TestNullReference()
116118
_container.Tests.Add(testRow);
117119

118120
_container.PostLoad();
121+
_container.Verify();
119122

120123
_logger.VerifyNoError();
121124

@@ -142,6 +145,7 @@ public void TestWrongReference()
142145
_container.Tests.Add(testRow);
143146

144147
_container.PostLoad();
148+
_container.Verify();
145149

146150
Assert.Equal("WrongId", _container.Refers["Refer"].ReferColumn.Id);
147151
Assert.Null(_container.Refers["Refer"].ReferColumn.Ref);
@@ -160,6 +164,7 @@ public void TestSelfReference()
160164
_container.Refers.Add(referRow);
161165

162166
_container.PostLoad();
167+
_container.Verify();
163168

164169
_logger.VerifyNoError();
165170

BakingSheet/Src/Sheet.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,10 @@ public virtual void PostLoad(SheetConvertingContext context)
8686

8787
private static bool IsVerifiableNode(PropertyMap.Node node)
8888
{
89+
// prevent recursive call
90+
if (IsReferenceNode(node))
91+
return true;
92+
8993
return node is PropertyMap.NodeObject &&
9094
node.AttributesGetter(typeof(SheetAssetAttribute)).Any();
9195
}

UnityProject/Packages/com.cathei.bakingsheet/Runtime/Core/Sheet.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,10 @@ public virtual void PostLoad(SheetConvertingContext context)
8686

8787
private static bool IsVerifiableNode(PropertyMap.Node node)
8888
{
89+
// prevent recursive call
90+
if (IsReferenceNode(node))
91+
return true;
92+
8993
return node is PropertyMap.NodeObject &&
9094
node.AttributesGetter(typeof(SheetAssetAttribute)).Any();
9195
}

UnityProject/Packages/com.cathei.bakingsheet/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{
22
"name": "com.cathei.bakingsheet",
33
"displayName": "BakingSheet",
4-
"version": "3.5.1",
4+
"author": { "name": "Maxwell Keonwoo Kang" },
5+
"version": "3.5.2",
56
"unity": "2019.4",
67
"description": "Easy datasheet management for C# and Unity.\nSupports Excel, Google Sheet, JSON and CSV format.",
78
"license": "MIT",

0 commit comments

Comments
 (0)