You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
forgejo/routers
SteveTheEngineer 1e2c2edab6
Catch the error before the response is processed by goth. (#20000)
The code introduced by #18185 gets the error from response after it was processed by goth.

That is incorrect, as goth (and golang.org/x/oauth) doesn't really care about the error, and it sends a token request with an empty authorization code to the server anyway, which always results in a `oauth2: cannot fetch token: 400 Bad Request` error from goth.
It means that unless the "state" parameter is omitted from the error response (which is required to be present, according to [RFC 6749, Section 4.1.2.1](https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.2.1)) or the page is reloaded (makes the session invalid), a 500 Internal Server Error page will be displayed.
This fixes it by handling the error before the request is passed to goth.
2 years ago
..
api Add more linters to improve code readability (#19989) 2 years ago
common Fix raw endpoint PDF file headers (#19825) 2 years ago
install feat: add DEFAULT_MERGE_STYLE to `repository.pull-request` section for repo init (#19751) 2 years ago
private Add more linters to improve code readability (#19989) 2 years ago
utils A better go code formatter, and now `make fmt` can run in Windows (#17684) 3 years ago
web Catch the error before the response is processed by goth. (#20000) 2 years ago
init.go Fix data-race problems in git module (quick patch) (#19934) 2 years ago