Skip to content

fix: serve local files with an empty mount prefix - #89

Open
bensynapse wants to merge 1 commit into
gin-contrib:masterfrom
bensynapse:fix-empty-mount-prefix
Open

bensynapse wants to merge 1 commit into
gin-contrib:masterfrom
bensynapse:fix-empty-mount-prefix

Conversation

@bensynapse

Copy link
Copy Markdown

I run Live Tennis API.

Serve("", LocalFile(dir, false)) currently skips existing files and falls through to the next handler.
Exists rejects the request because trimming an empty prefix leaves the path length unchanged.

Check whether the prefix matches before trimming it. Empty mounts now serve local files and index pages.
The tests cover GET, HEAD, directory listing policy, missing files and paths outside a mount.
They also cover the existing / and /assets mounts. Nine empty-prefix cases fail against unchanged master.

The full suite passes with race detection on Go 1.26.0 and Go 1.27.1.
I ran go test -v -race -covermode=atomic -coverprofile=coverage.out ./... and the configured make install-tools lint.
The CI benchmark command, builds and vet also pass.

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.

1 participant