Escape characters in JSON dump in tdb dump #93
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
If a field in a TrailDB contains double quotes (
"
),tdb dump --json
does not add the escape parenthesis. This patch handles this particular case, but not other escape characters (like newline).I tried to keep the change simple and performant. It will only allocate and copy the string if replacement is needed, which most likely will happen very rarely. If no modification is needed, no allocation or copy is done.
I'm a bit unsure about the convention around freeing memory so I'm happy to take another pass if there's a better way.
As a side note, there's quite a few different ways we could speed up the replacement and I'd be happy to do another pass to improve performance.