From 32589478979d51f5dd49643c24ffd4c473e08052 Mon Sep 17 00:00:00 2001 From: Kamron Batman <3953314+kamronbatman@users.noreply.github.com> Date: Sun, 5 Dec 2021 21:23:08 -0800 Subject: [PATCH] fix: Fixes codege of hashsets (#879) --- .../SerializableMigration/Rules/HashSetMigrationRule.cs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Projects/SerializationGenerator/SerializableMigration/Rules/HashSetMigrationRule.cs b/Projects/SerializationGenerator/SerializableMigration/Rules/HashSetMigrationRule.cs index 46e425a3d..d670ae01f 100644 --- a/Projects/SerializationGenerator/SerializableMigration/Rules/HashSetMigrationRule.cs +++ b/Projects/SerializationGenerator/SerializableMigration/Rules/HashSetMigrationRule.cs @@ -67,7 +67,11 @@ namespace SerializableMigration ruleArguments[0] = extraOptions; ruleArguments[1] = setTypeSymbol.ToDisplayString(); ruleArguments[2] = serializableSetType.Rule; - Array.Copy(serializableSetType.RuleArguments, 0, ruleArguments, 3, length); + + if (length > 0) + { + Array.Copy(serializableSetType.RuleArguments, 0, ruleArguments, 3, length); + } return true; } @@ -98,7 +102,7 @@ namespace SerializableMigration source.AppendLine($"{indent}{ruleArguments[argumentsOffset]} {propertyEntry};"); source.AppendLine($"{indent}var {propertyCount} = reader.ReadEncodedInt();"); source.AppendLine($"{indent}{property.Name} = new System.Collections.Generic.HashSet<{ruleArguments[argumentsOffset]}>({propertyCount});"); - source.AppendLine($"{indent}for (var {propertyIndex} = 0; i < {propertyCount}; {propertyIndex}++)"); + source.AppendLine($"{indent}for (var {propertyIndex} = 0; {propertyIndex} < {propertyCount}; {propertyIndex}++)"); source.AppendLine($"{indent}{{"); var serializableSetElement = new SerializableProperty