Skip to content

Wrong usage of QueryStringDecoder.decodeComponent in PathPattern #590

@finalchild

Description

@finalchild

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: softwaremill/tapir#3384

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions