diff --git a/build.gradle b/build.gradle index 9641c9972f..6a20ee7201 100644 --- a/build.gradle +++ b/build.gradle @@ -653,6 +653,7 @@ tasks.register('generateRustTestCodecs', JavaExec) { 'sbe-tool/src/test/resources/issue972.xml', 'sbe-tool/src/test/resources/issue984.xml', 'sbe-tool/src/test/resources/issue987.xml', + 'sbe-tool/src/test/resources/issue1028.xml', 'sbe-tool/src/test/resources/example-bigendian-test-schema.xml', 'sbe-tool/src/test/resources/nested-composite-name.xml', ] @@ -866,7 +867,7 @@ tasks.register('generateGolangCodecs') { 'generateGolangFlyweightCodecTestComposite', 'generateGolangFlyweightCodecsWithXIncludes', 'generateGolangFlyweightCodecsWithXSD', - 'generateIrCodecs', + 'generateIrCodecs', ':sbe-all:jar' } diff --git a/rust/Cargo.toml b/rust/Cargo.toml index 6b265a3020..f15d4d2f6d 100644 --- a/rust/Cargo.toml +++ b/rust/Cargo.toml @@ -16,6 +16,7 @@ issue_895 = { path = "../generated/rust/issue895" } issue_972 = { path = "../generated/rust/issue972" } issue_984 = { path = "../generated/rust/issue984" } issue_987 = { path = "../generated/rust/issue987" } +issue_1028 = { path = "../generated/rust/issue1028" } baseline_bigendian = { path = "../generated/rust/baseline-bigendian" } nested_composite_name = { path = "../generated/rust/nested-composite-name" } diff --git a/sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/rust/RustGenerator.java b/sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/rust/RustGenerator.java index 0c03766553..f78899cb4b 100644 --- a/sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/rust/RustGenerator.java +++ b/sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/rust/RustGenerator.java @@ -1580,7 +1580,7 @@ private static void generateCompositeDecoder( indent(out, 2, "offset: usize,\n"); indent(out, 1, "}\n\n"); - final int version = tokens.stream().findFirst().get().version(); + final int version = tokens.get(1).version(); // skip BEGIN_COMPOSITE appendImplReaderForComposite(schemaVersionType, version, out, 1, decoderName); // impl<'a, P> start diff --git a/sbe-tool/src/test/resources/issue1028.xml b/sbe-tool/src/test/resources/issue1028.xml new file mode 100644 index 0000000000..2a88c59c1b --- /dev/null +++ b/sbe-tool/src/test/resources/issue1028.xml @@ -0,0 +1,30 @@ + + + + 0 + + + + + + + + + + + + + + + + \ No newline at end of file