Skip to content

Conversation

kaathewisegit
Copy link
Contributor

Previously, only one char got checked for escapes when parsing strings. This meant that strings such as "\" never got terminated, leading to incorrect parsing.

This commit adds a check which calculates the number of escapes pre-string ending to determine wherever the last escape is itself escaped or not.

This was prompted by issue #345, I also added a test case for it.

One important note is that I am unsure how much that impacts performance. The for loop is only accessed if the string has an escape before it, so it should be a fairly rare path.

Previously, only one char got checked for escapes when parsing strings.
This meant that strings such as "\\" never got terminated, leading to
incorrect parsing.

This commit adds a check which calculates the number of escapes
pre-string ending to determine wherever the last escape is itself
escaped or not.
@boyter boyter merged commit 14b9b22 into boyter:master Apr 27, 2023
@boyter
Copy link
Owner

boyter commented Apr 27, 2023

Neat. Thanks for taking the time out to resolve this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants