finatra
finatra copied to clipboard
Wrong usage of QueryStringDecoder.decodeComponent in PathPattern
Describe the bug PathPattern calls QueryStringDecoder.decodeComponent, which replaces '+' to ' '.
This behavior is expected in query strings, but not in path strings.
(FYI, QueryStringDecoder.decodeComponent has an overloaded version that allows setting isPath=true, but this is a private method.)
To Reproduce I'm not familiar with finatra, so I don't know what exactly this bug affects, but it seems incoming path decoding would not be working properly.
Expected behavior "as+df" should be decoded to "as+df", not "as df".
Screenshots If applicable, add screenshots to help explain your problem.
Environment For web, specify your OS and browser version. For mobile, specify device, OS and version. For libraries, what version of build tools are you using?
Additional context I ran into this code digging into a similar tapir bug: https://github.com/softwaremill/tapir/issues/3384