java-serializer icon indicating copy to clipboard operation
java-serializer copied to clipboard

Invalid serialization if single double quotation mark is present

Open BoomEaro opened this issue 1 year ago • 0 comments

If you insert only one double quotation mark in the field like this:

test-section:
  # Some description for this test value1
  value-test: "
  # Some description for this test value2
  value-test-2: "test2"

The result of the serialization will be as follows:

test-section:
  # Some description for this test value1
  value-test: " # Some description for this test value2 value-test-2: "
  # Some description for this test value2
  value-test-2: "test2"

It looks like reader keeps looking for the next double quote even when the next field starts.

Configuration used:

public class TestSettings extends YamlSerializable {

    @Transient
    private static final SerializerConfig CONFIG = new SerializerConfig.Builder()
            .setCommentValueIndent(1)
            .build();
    @Transient
    public static final TestSettings IMP = new TestSettings();

    public TestSettings() {
        super(CONFIG);
    }

    public TEST_SECTION TEST_SECTION = new TEST_SECTION();

    public static class TEST_SECTION {

        @Comment(value = {
                @CommentValue("Some description for this test value1"),
        }, at = Comment.At.PREPEND)
        public String VALUE_TEST = "test1";

        @Comment(value = {
                @CommentValue("Some description for this test value2"),
        }, at = Comment.At.PREPEND)
        public String VALUE_TEST2 = "test2";

    }
}

BoomEaro avatar Oct 18 '23 13:10 BoomEaro