Sounds confusing?
local t1 = {"lol"}
local t2 = {{t1},{t1}}
print(textutils.serialize(t2))
The above program WILL fail with "Cannot serialize table with recursive entries"!And as you can see, it isn't recursive.
Thats because when the main serialization function (serializeImpl) serializes a table, it adds it to tTracking when it enters the table, but not when it exits.
Adding "tTracking[t] = nil" above "return result" would fix this.












