Use a variable but a function for IsProd because of a slight performance increment (#17368)

This commit is contained in:
Lunny Xiao 2021-10-20 22:37:19 +08:00 committed by GitHub
parent 0208ea0248
commit f494776931
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 19 additions and 22 deletions

View file

@ -95,7 +95,7 @@ func (ctx *APIContext) Error(status int, title string, obj interface{}) {
if status == http.StatusInternalServerError {
log.ErrorWithSkip(1, "%s: %s", title, message)
if setting.IsProd() && !(ctx.User != nil && ctx.User.IsAdmin) {
if setting.IsProd && !(ctx.User != nil && ctx.User.IsAdmin) {
message = ""
}
}
@ -112,7 +112,7 @@ func (ctx *APIContext) InternalServerError(err error) {
log.ErrorWithSkip(1, "InternalServerError: %v", err)
var message string
if !setting.IsProd() || (ctx.User != nil && ctx.User.IsAdmin) {
if !setting.IsProd || (ctx.User != nil && ctx.User.IsAdmin) {
message = err.Error()
}

View file

@ -225,7 +225,7 @@ func (ctx *Context) NotFound(title string, err error) {
func (ctx *Context) notFoundInternal(title string, err error) {
if err != nil {
log.ErrorWithSkip(2, "%s: %v", title, err)
if !setting.IsProd() {
if !setting.IsProd {
ctx.Data["ErrorMsg"] = err
}
}
@ -261,7 +261,7 @@ func (ctx *Context) ServerError(title string, err error) {
func (ctx *Context) serverErrorInternal(title string, err error) {
if err != nil {
log.ErrorWithSkip(2, "%s: %v", title, err)
if !setting.IsProd() {
if !setting.IsProd {
ctx.Data["ErrorMsg"] = err
}
}
@ -645,7 +645,7 @@ func Contexter() func(next http.Handler) http.Handler {
"CurrentURL": setting.AppSubURL + req.URL.RequestURI(),
"PageStartTime": startTime,
"Link": link,
"IsProd": setting.IsProd(),
"IsProd": setting.IsProd,
},
}
// PageData is passed by reference, and it will be rendered to `window.config.pageData` in `head.tmpl` for JavaScript modules

View file

@ -18,7 +18,7 @@ import (
// AddCacheControlToHeader adds suitable cache-control headers to response
func AddCacheControlToHeader(h http.Header, d time.Duration) {
if setting.IsProd() {
if setting.IsProd {
h.Set("Cache-Control", "private, max-age="+strconv.Itoa(int(d.Seconds())))
} else {
h.Set("Cache-Control", "no-store")

View file

@ -419,17 +419,13 @@ var (
PIDFile = "/run/gitea.pid"
WritePIDFile bool
RunMode string
IsProd bool
RunUser string
IsWindows bool
HasRobotsTxt bool
InternalToken string // internal access token
)
// IsProd if it's a production mode
func IsProd() bool {
return strings.EqualFold(RunMode, "prod")
}
func getAppPath() (string, error) {
var appPath string
var err error
@ -906,6 +902,7 @@ func NewContext() {
// Please don't use root as a bandaid to "fix" something that is broken, instead the broken thing should instead be fixed properly.
unsafeAllowRunAsRoot := Cfg.Section("").Key("I_AM_BEING_UNSAFE_RUNNING_AS_ROOT").MustBool(false)
RunMode = Cfg.Section("").Key("RUN_MODE").MustString("prod")
IsProd = strings.EqualFold(RunMode, "prod")
// Does not check run user when the install lock is off.
if InstallLock {
currentUser, match := IsRunUserMatchCurrentUser(RunUser)

View file

@ -91,7 +91,7 @@ func HTMLRenderer() *render.Render {
Funcs: NewFuncMap(),
Asset: GetAsset,
AssetNames: GetAssetNames,
IsDevelopment: !setting.IsProd(),
IsDevelopment: !setting.IsProd,
DisableHTTPErrorRendering: true,
})
}