Prevent hang in git cat-file if repository is not a valid repository and other fixes (#17991)
This PR contains multiple fixes. The most important of which is: * Prevent hang in git cat-file if the repository is not a valid repository Unfortunately it appears that if git cat-file is run in an invalid repository it will hang until stdin is closed. This will result in deadlocked /pulls pages and dangling git cat-file calls if a broken repository is tried to be reviewed or pulls exists for a broken repository. Fix #14734 Fix #9271 Fix #16113 Otherwise there are a few small other fixes included which this PR was initially intending to fix: * Fix panic on partial compares due to missing PullRequestWorkInProgressPrefixes * Fix links on pulls pages due to regression from #17551 - by making most /issues routes match /pulls too - Fix #17983 * Fix links on feeds pages due to another regression from #17551 but also fix issue with syncing tags - Fix #17943 * Add missing locale entries for oauth group claims * Prevent NPEs if ColorFormat is called on nil users, repos or teams.
This commit is contained in:
@ -160,6 +160,12 @@ type SearchOrganizationsOptions struct {
|
||||
|
||||
// ColorFormat writes a colored string to identify this struct
|
||||
func (u *User) ColorFormat(s fmt.State) {
|
||||
if u == nil {
|
||||
log.ColorFprintf(s, "%d:%s",
|
||||
log.NewColoredIDValue(0),
|
||||
log.NewColoredValue("<nil>"))
|
||||
return
|
||||
}
|
||||
log.ColorFprintf(s, "%d:%s",
|
||||
log.NewColoredIDValue(u.ID),
|
||||
log.NewColoredValue(u.Name))
|
||||
|
Reference in New Issue
Block a user