Fix for parsing serialised data where the message has a self-referencing field.
In the following schemas, the 'parent' field could have caused an issue
proto2
message MessageLoopTest {
optional string id = 1;
optional string name = 2;
optional string country = 3;
optional MessageLoopTest parent = 4;
optional double parentScalingFactor = 5;
}
proto3
message MessageLoopTest {
string id = 1;
string name = 2;
string country = 3;
MessageLoopTest parent = 4;
double parentScalingFactor = 5;
}
using the following q code would have caused a crash
scalars:("testID";"testName";"testCountry";(::);5.0);
x:.protobufkdb.serializeArrayFromList[`MessageLoopTest; scalars];
scalars~ .protobufkdb.parseArrayToList[`MessageLoopTest; x] // crashed previously
scalars:("testID";"testName";"testCountry";("testID";"testName";"testCountry";(::);5.0);5.0);
x:.protobufkdb.serializeArrayFromList[`MessageLoopTest; scalars];
scalars~.protobufkdb.parseArrayToList[`MessageLoopTest; x] // crashed previouslyMacOS prebuilt binaries temporarily unavailable from release. Follow documentation for building from source.