diff options
author | rkayaith <rkayaith@gmail.com> | 2022-10-25 15:17:14 -0400 |
---|---|---|
committer | Rahul Kayaith <rkayaith@gmail.com> | 2023-02-09 21:56:57 -0500 |
commit | 32b3f13337ef0bf747705d058f4772c7fdabd736 (patch) | |
tree | 2584ea803724768c19556836bccab1b3d8bb874f /lldb/source/Commands/CommandObjectCommands.cpp | |
parent | 35537aea1228df29c4e32049e4750029c5f0693b (diff) | |
download | llvm-32b3f13337ef0bf747705d058f4772c7fdabd736.zip llvm-32b3f13337ef0bf747705d058f4772c7fdabd736.tar.gz llvm-32b3f13337ef0bf747705d058f4772c7fdabd736.tar.bz2 |
[YAML] Trim trailing whitespace from plain scalars
In some cases plain scalars are currently parsed with a trailing
newline. In particular this shows up often when parsing JSON files, e.g.
note the `\n` after `456` below:
```
$ cat test.yaml
{
"foo": 123,
"bar": 456
}
$ yaml-bench test.yaml -canonical
%YAML 1.2
---
!!map {
? !!str "foo"
: !!str "123",
? !!str "bar"
: !!str "456\n",
}
...
```
The trailing whitespace ends up causing the conversion of the scalar to
int/bool/etc. to fail, causing the issue seen here:
https://github.com/llvm/llvm-project/issues/15877
From reading the YAML spec (https://yaml.org/spec/1.2.2/#733-plain-style)
it seems like plain scalars should never end with whitespace, so this
change trims all trailing whitespace characters from the
value (specifically `b-line-feed`, `b-carriage-return`, `s-space`, and
`s-tab`).
Reviewed By: scott.linder
Differential Revision: https://reviews.llvm.org/D137118
Diffstat (limited to 'lldb/source/Commands/CommandObjectCommands.cpp')
0 files changed, 0 insertions, 0 deletions