From c1a80b7d6aed36aebcae9b99f63336c758c0e2c4 Mon Sep 17 00:00:00 2001 From: zeripath Date: Wed, 26 May 2021 03:50:35 +0100 Subject: [PATCH] Use filepath.ToSlash and Join in indexer defaults and queues (#15971) As revealed by #15964 there is inconsistent use of filepath Join and path Join for these directories. The best thing to do is to use filepath.Join but then ToSlash them for consistency. Signed-off-by: Andrew Thornton Co-authored-by: John Olheiser --- modules/setting/indexer.go | 11 +++++------ modules/setting/queue.go | 6 +++--- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/modules/setting/indexer.go b/modules/setting/indexer.go index b111bf445..8f1d801a7 100644 --- a/modules/setting/indexer.go +++ b/modules/setting/indexer.go @@ -5,7 +5,6 @@ package setting import ( - "path" "path/filepath" "strings" "time" @@ -68,23 +67,23 @@ var ( func newIndexerService() { sec := Cfg.Section("indexer") Indexer.IssueType = sec.Key("ISSUE_INDEXER_TYPE").MustString("bleve") - Indexer.IssuePath = sec.Key("ISSUE_INDEXER_PATH").MustString(path.Join(AppDataPath, "indexers/issues.bleve")) + Indexer.IssuePath = filepath.ToSlash(sec.Key("ISSUE_INDEXER_PATH").MustString(filepath.ToSlash(filepath.Join(AppDataPath, "indexers/issues.bleve")))) if !filepath.IsAbs(Indexer.IssuePath) { - Indexer.IssuePath = path.Join(AppWorkPath, Indexer.IssuePath) + Indexer.IssuePath = filepath.ToSlash(filepath.Join(AppWorkPath, Indexer.IssuePath)) } Indexer.IssueConnStr = sec.Key("ISSUE_INDEXER_CONN_STR").MustString(Indexer.IssueConnStr) Indexer.IssueIndexerName = sec.Key("ISSUE_INDEXER_NAME").MustString(Indexer.IssueIndexerName) Indexer.IssueQueueType = sec.Key("ISSUE_INDEXER_QUEUE_TYPE").MustString(LevelQueueType) - Indexer.IssueQueueDir = sec.Key("ISSUE_INDEXER_QUEUE_DIR").MustString(path.Join(AppDataPath, "queues/common")) + Indexer.IssueQueueDir = filepath.ToSlash(sec.Key("ISSUE_INDEXER_QUEUE_DIR").MustString(filepath.ToSlash(filepath.Join(AppDataPath, "queues/common")))) Indexer.IssueQueueConnStr = sec.Key("ISSUE_INDEXER_QUEUE_CONN_STR").MustString("") Indexer.IssueQueueBatchNumber = sec.Key("ISSUE_INDEXER_QUEUE_BATCH_NUMBER").MustInt(20) Indexer.RepoIndexerEnabled = sec.Key("REPO_INDEXER_ENABLED").MustBool(false) Indexer.RepoType = sec.Key("REPO_INDEXER_TYPE").MustString("bleve") - Indexer.RepoPath = sec.Key("REPO_INDEXER_PATH").MustString(path.Join(AppDataPath, "indexers/repos.bleve")) + Indexer.RepoPath = filepath.ToSlash(sec.Key("REPO_INDEXER_PATH").MustString(filepath.ToSlash(filepath.Join(AppDataPath, "indexers/repos.bleve")))) if !filepath.IsAbs(Indexer.RepoPath) { - Indexer.RepoPath = path.Join(AppWorkPath, Indexer.RepoPath) + Indexer.RepoPath = filepath.ToSlash(filepath.Join(AppWorkPath, Indexer.RepoPath)) } Indexer.RepoConnStr = sec.Key("REPO_INDEXER_CONN_STR").MustString("") Indexer.RepoIndexerName = sec.Key("REPO_INDEXER_NAME").MustString("gitea_codes") diff --git a/modules/setting/queue.go b/modules/setting/queue.go index c626f585f..41e95fbe5 100644 --- a/modules/setting/queue.go +++ b/modules/setting/queue.go @@ -48,7 +48,7 @@ func GetQueueSettings(name string) QueueSettings { q.Name = name // DataDir is not directly inheritable - q.DataDir = filepath.Join(Queue.DataDir, "common") + q.DataDir = filepath.ToSlash(filepath.Join(Queue.DataDir, "common")) // QueueName is not directly inheritable either q.QueueName = name + Queue.QueueName for _, key := range sec.Keys() { @@ -91,9 +91,9 @@ func GetQueueSettings(name string) QueueSettings { // This is exported for tests to be able to use the queue func NewQueueService() { sec := Cfg.Section("queue") - Queue.DataDir = sec.Key("DATADIR").MustString("queues/") + Queue.DataDir = filepath.ToSlash(sec.Key("DATADIR").MustString("queues/")) if !filepath.IsAbs(Queue.DataDir) { - Queue.DataDir = filepath.Join(AppDataPath, Queue.DataDir) + Queue.DataDir = filepath.ToSlash(filepath.Join(AppDataPath, Queue.DataDir)) } Queue.QueueLength = sec.Key("LENGTH").MustInt(20) Queue.BatchLength = sec.Key("BATCH_LENGTH").MustInt(20)