1
0
Fork 0
mirror of https://github.com/Eggbertx/gochan.git synced 2025-09-13 09:26:23 -07:00

Audit potential bugs pointed out by Deepsource

This commit is contained in:
Eggbertx 2024-02-07 15:15:56 -08:00
parent 12ce2a71be
commit 2a49de7575
3 changed files with 17 additions and 18 deletions

View file

@ -30,12 +30,11 @@ for the threads and board pages`
)
var (
versionStr string
dbVersionStr string
migrator common.DBMigrator
versionStr string
migrator common.DBMigrator
)
func close() int {
func cleanup() int {
returnVal := 0
var err error
if migrator != nil {
@ -117,7 +116,7 @@ func main() {
}
if err = migrator.Init(&options); err != nil {
close()
cleanup()
log.Fatalf("Unable to initialize %s migrator: %s\n",
options.ChanType, err.Error())
return
@ -125,7 +124,7 @@ func main() {
var migrated bool
if migrated, err = migrator.MigrateDB(); err != nil {
close()
cleanup()
log.Fatalln("Error migrating database:", err.Error())
}
if migrated {
@ -137,5 +136,5 @@ func main() {
} else {
log.Println(migrateCompleteTxt)
}
os.Exit(close())
os.Exit(cleanup())
}

View file

@ -25,7 +25,7 @@ var (
versionStr string
)
func close() {
func cleanup() {
gcsql.Close()
geoip.Close()
gcplugin.ClosePlugins()
@ -41,7 +41,7 @@ func main() {
err := gcutil.InitLogs(systemCritical.LogDir, true, uid, gid)
if err != nil {
fmt.Println("Error opening logs:", err.Error())
close()
cleanup()
os.Exit(1)
}
@ -52,7 +52,7 @@ func main() {
}
if err = gcplugin.LoadPlugins(systemCritical.Plugins); err != nil {
close()
cleanup()
gcutil.LogFatal().Err(err).Msg("failed loading plugins")
}
@ -63,7 +63,7 @@ func main() {
systemCritical.DBusername, systemCritical.DBpassword, systemCritical.DBprefix,
); err != nil {
fmt.Println("Failed to connect to the database:", err.Error())
close()
cleanup()
gcutil.LogFatal().Err(err).Msg("Failed to connect to the database")
}
events.TriggerEvent("db-connected")
@ -72,7 +72,7 @@ func main() {
Msg("Connected to database")
if err = gcsql.CheckAndInitializeDatabase(systemCritical.DBtype); err != nil {
close()
cleanup()
gcutil.LogFatal().Err(err).Msg("Failed to initialize the database")
}
events.TriggerEvent("db-initialized")
@ -80,21 +80,21 @@ func main() {
serverutil.InitMinifier()
siteCfg := config.GetSiteConfig()
if err = geoip.SetupGeoIP(siteCfg.GeoIPType, siteCfg.GeoIPOptions); err != nil {
close()
cleanup()
gcutil.LogFatal().Err(err).Msg("Unable to initialize GeoIP")
}
posting.InitCaptcha()
if err = gctemplates.InitTemplates(); err != nil {
fmt.Println("Failed initializing templates:", err.Error())
close()
cleanup()
gcutil.LogFatal().Err(err).Send()
}
for _, board := range gcsql.AllBoards {
if _, err = board.DeleteOldThreads(); err != nil {
fmt.Printf("Error deleting old threads for board /%s/: %s\n", board.Dir, err)
close()
cleanup()
gcutil.LogFatal().Err(err).Caller().
Str("board", board.Dir).
Msg("Failed deleting old threads")
@ -106,7 +106,7 @@ func main() {
posting.InitPosting()
if err = gcutil.InitLogs(systemCritical.LogDir, systemCritical.Verbose, uid, gid); err != nil {
fmt.Println("Error opening logs:", err.Error())
close()
cleanup()
os.Exit(1) // skipcq: CRT-D0011
}
defer events.TriggerEvent("shutdown")

View file

@ -736,9 +736,9 @@ func wordfiltersCallback(_ http.ResponseWriter, request *http.Request, staff *gc
var editFilter *gcsql.Wordfilter
if editIDstr != "" {
editID := gcutil.HackyStringToInt(editIDstr)
for _, filter := range wordfilters {
for w, filter := range wordfilters {
if filter.ID == editID {
editFilter = &filter
editFilter = &wordfilters[w]
break
}
}