| ... | @@ -838,22 +838,9 @@ fn addPackageInstance(s: *Serialize, b: *std.Build) Allocator.Error!void { | ... | @@ -838,22 +838,9 @@ fn addPackageInstance(s: *Serialize, b: *std.Build) Allocator.Error!void { |
| 838 | } | 838 | } |
| 839 | } | 839 | } |
| 840 | | 840 | |
| 841 | const modules_keys = try arena.alloc( | 841 | const modules_values = try arena.alloc(Configuration.Module.Index, b.modules.count()); |
| 842 | []const u8, | 842 | for (modules_values, b.modules.values()) |*dest_value, value| { |
| 843 | b.modules.count(), | 843 | dest_value.* = try s.addModule(value); |
| 844 | ); | | |
| 845 | const modules_values = try arena.alloc( | | |
| 846 | Configuration.Module.Index, | | |
| 847 | b.modules.count(), | | |
| 848 | ); | | |
| 849 | | | |
| 850 | { | | |
| 851 | var i: usize = 0; | | |
| 852 | var iter = b.modules.iterator(); | | |
| 853 | while (iter.next()) |entry| : (i += 1) { | | |
| 854 | modules_keys[i] = entry.key_ptr.*; | | |
| 855 | modules_values[i] = try s.addModule(entry.value_ptr.*); | | |
| 856 | } | | |
| 857 | } | 844 | } |
| 858 | | 845 | |
| 859 | wc.package_instances.items[index] = .{ | 846 | wc.package_instances.items[index] = .{ |
| ... | @@ -862,7 +849,7 @@ fn addPackageInstance(s: *Serialize, b: *std.Build) Allocator.Error!void { | ... | @@ -862,7 +849,7 @@ fn addPackageInstance(s: *Serialize, b: *std.Build) Allocator.Error!void { |
| 862 | .options = .{ .slice = options }, | 849 | .options = .{ .slice = options }, |
| 863 | }), | 850 | }), |
| 864 | .modules = .{ | 851 | .modules = .{ |
| 865 | .keys = try wc.addStringList(modules_keys), | 852 | .keys = try wc.addStringList(b.modules.keys()), |
| 866 | .values = try wc.addDeduped(Configuration.Module.List, .{ | 853 | .values = try wc.addDeduped(Configuration.Module.List, .{ |
| 867 | .modules = .{ .slice = modules_values }, | 854 | .modules = .{ .slice = modules_values }, |
| 868 | }), | 855 | }), |