borinquenkid opened a new pull request, #16284:
URL: https://github.com/apache/grails-core/pull/16284

   ## Summary
   - `SAW_EXPONENT_DIGITS` was the only numeric scanner state whose terminator 
switch omitted an explicit end-of-input case, so a bare exponent-notation 
number with nothing following it (e.g. a top-level `1e2`) threw 
`JsonParseException` instead of parsing.
   - `SAW_MINUS_I` appended the character it read on every iteration of its 
`-Infinity` match loop, including the terminator character read immediately 
after matching the literal's final `y` - so the buffer handed to 
`Double.parseDouble` always carried one extra trailing character, and 
`-Infinity` failed to parse in every context (end-of-input, before a comma, 
before a closing bracket).
   - Found while adding broader `JsonReader`/`JsonWriter` test coverage on 
`8.1.x`; `JsonScanner` is unchanged since `7.0.x`, so the fix applies cleanly 
here. This branch had no prior `JsonReader` test coverage, so a minimal 
`JsonReaderSpec` is added with just the two regression tests.
   
   ## Test plan
   - [x] `./gradlew :grails-data-mongodb-bson:test` - full module suite green, 
including the two new regression tests
   - [x] `./gradlew :grails-data-mongodb-bson:codeStyle` - clean
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   
   https://claude.ai/code/session_01QAjfckcY4EJsxranv1RyGV


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to