From a8c4db197da9dbb304f6e7a052152309a1abe4c8 Mon Sep 17 00:00:00 2001 From: James Read Date: Sat, 23 Mar 2024 22:14:08 +0000 Subject: [PATCH] Bug webui search order (#253) * bugfix: Search order of webui directories was not deterministic * bugfix: webui dir search order was not deterministic * bugfix: webui dir search order was not deterministic * bugfix: webui dir search order was not deterministic --- internal/httpservers/webuiServer.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/httpservers/webuiServer.go b/internal/httpservers/webuiServer.go index 8f13bcc3..b97b8b63 100644 --- a/internal/httpservers/webuiServer.go +++ b/internal/httpservers/webuiServer.go @@ -33,7 +33,11 @@ func findWebuiDir() string { "/etc/OliveTin/webui/", } - for _, dir := range directoriesToSearch { + // Use a classic i := 0 style for loop here instead of range, as the + // search order must be deterministic - the order that the slice was defined in. + for i := 0; i < len(directoriesToSearch); i++ { + dir := directoriesToSearch[i] + if _, err := os.Stat(dir); !os.IsNotExist(err) { log.WithFields(log.Fields{ "dir": dir,