mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-29 10:57:44 +09:00 
			
		
		
		
	Use route rather than use thus reducing the number of stack frames (#15301)
Since the move to Chi the number of stack frames has proliferated somewhat catastrophically and we're up to 96 frames with multiple tests of the url outside of a trie which is inefficient. This PR reduces the number of stack frames by 6 through careful use of Route, moves Captcha into its own router so that it only fires on Captcha routes, similarly for avatars and repo-avatars. The robots.txt, / and apple-touch-icon.png are moved out of requiring Contexter. It moves access logger higher in the stack frame because there is no reason why it can't be higher. Extract from #15186 Contains #15292
This commit is contained in:
		| @@ -692,6 +692,7 @@ func Contexter() func(next http.Handler) http.Handler { | ||||
| 			log.Debug("Session ID: %s", ctx.Session.ID()) | ||||
| 			log.Debug("CSRF Token: %v", ctx.Data["CsrfToken"]) | ||||
|  | ||||
| 			// FIXME: do we really always need these setting? There should be someway to have to avoid having to always set these | ||||
| 			ctx.Data["IsLandingPageHome"] = setting.LandingPageURL == setting.LandingPageHome | ||||
| 			ctx.Data["IsLandingPageExplore"] = setting.LandingPageURL == setting.LandingPageExplore | ||||
| 			ctx.Data["IsLandingPageOrganizations"] = setting.LandingPageURL == setting.LandingPageOrganizations | ||||
| @@ -708,6 +709,11 @@ func Contexter() func(next http.Handler) http.Handler { | ||||
|  | ||||
| 			ctx.Data["ManifestData"] = setting.ManifestData | ||||
|  | ||||
| 			ctx.Data["UnitWikiGlobalDisabled"] = models.UnitTypeWiki.UnitGlobalDisabled() | ||||
| 			ctx.Data["UnitIssuesGlobalDisabled"] = models.UnitTypeIssues.UnitGlobalDisabled() | ||||
| 			ctx.Data["UnitPullsGlobalDisabled"] = models.UnitTypePullRequests.UnitGlobalDisabled() | ||||
| 			ctx.Data["UnitProjectsGlobalDisabled"] = models.UnitTypeProjects.UnitGlobalDisabled() | ||||
|  | ||||
| 			ctx.Data["i18n"] = locale | ||||
| 			ctx.Data["Tr"] = i18n.Tr | ||||
| 			ctx.Data["Lang"] = locale.Language() | ||||
|   | ||||
		Reference in New Issue
	
	Block a user