diff options
| author | mrlolthe1st <[email protected]> | 2025-06-23 15:34:35 +0300 |
|---|---|---|
| committer | mrlolthe1st <[email protected]> | 2025-06-23 16:26:26 +0300 |
| commit | 98b1e58cb59bd61df43699a36053a1ef1589d63f (patch) | |
| tree | 517f82644a78bcd2e9efc35f2eac495c6424fe05 | |
| parent | 0b32706dbbcba42abc096955d7ad3276640e7208 (diff) | |
YQL-19921: Proper handle {} and []
commit_hash:c0d84e9086c46ed6c059307704d44f9f3e5c75b9
| -rw-r--r-- | yt/yql/providers/yt/codec/yt_arrow_converter.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/yt/yql/providers/yt/codec/yt_arrow_converter.cpp b/yt/yql/providers/yt/codec/yt_arrow_converter.cpp index 2f08546ec35..52ce6e8cea3 100644 --- a/yt/yql/providers/yt/codec/yt_arrow_converter.cpp +++ b/yt/yql/providers/yt/codec/yt_arrow_converter.cpp @@ -323,13 +323,13 @@ void SkipYson(TYsonBuffer& buf) { case BeginListSymbol: { buf.Next(); for (;;) { + if (buf.Current() == EndListSymbol) { + break; + } SkipYson(buf); if (buf.Current() == ListItemSeparatorSymbol) { buf.Next(); } - if (buf.Current() == EndListSymbol) { - break; - } } buf.Next(); break; @@ -339,6 +339,9 @@ void SkipYson(TYsonBuffer& buf) { auto originalEnd = buf.Current() == BeginMapSymbol ? EndMapSymbol : EndAttributesSymbol; buf.Next(); for (;;) { + if (buf.Current() == originalEnd) { + break; + } SkipYson(buf); YQL_ENSURE(buf.Current() == KeyValueSeparatorSymbol); buf.Next(); @@ -346,9 +349,6 @@ void SkipYson(TYsonBuffer& buf) { if (buf.Current() == KeyedItemSeparatorSymbol) { buf.Next(); } - if (buf.Current() == originalEnd) { - break; - } } buf.Next(); break; |
