From 633d63a22032e09d46890d3230824a1a87afdecc Mon Sep 17 00:00:00 2001 From: Paul Pan Date: Fri, 15 Mar 2024 00:30:03 +0800 Subject: [PATCH] fix: mount directory must end with separator --- internal/service/runner/compile.go | 2 +- internal/service/runner/new_problem.go | 4 ++-- internal/service/runner/run_judge.go | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/service/runner/compile.go b/internal/service/runner/compile.go index 731e37c..843c607 100644 --- a/internal/service/runner/compile.go +++ b/internal/service/runner/compile.go @@ -20,7 +20,7 @@ func (s *service) Compile(meta *JudgeMeta) (*JudgeStatus, e.Status) { // 1. prepare judge environment workDir := filepath.Join(UserDir, meta.Run.User) - judgeDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "judge") + judgeDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "judge") + string(filepath.Separator) sourceFile := filepath.Join(workDir, fmt.Sprintf("%s.%s", meta.Run.User, meta.Run.Lang)) targetFile := filepath.Join(workDir, fmt.Sprintf("%s.out", meta.Run.User)) diff --git a/internal/service/runner/new_problem.go b/internal/service/runner/new_problem.go index ed3d833..1ec59c8 100644 --- a/internal/service/runner/new_problem.go +++ b/internal/service/runner/new_problem.go @@ -49,8 +49,8 @@ func (s *service) PrebuildProblem(meta *JudgeMeta, config *Config, force bool) e return e.Success } - dataDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "data") - judgeDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "judge") + dataDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "data") + string(filepath.Separator) + judgeDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "judge") + string(filepath.Separator) args := &RunArgs{ Program: ProgramArgs{ diff --git a/internal/service/runner/run_judge.go b/internal/service/runner/run_judge.go index 883c77d..abea852 100644 --- a/internal/service/runner/run_judge.go +++ b/internal/service/runner/run_judge.go @@ -154,8 +154,8 @@ func (s *service) ProblemRun(meta *JudgeMeta) ProblemRunResults { func (s *service) ProblemJudge(meta *JudgeMeta) { workDir := filepath.Join(UserDir, meta.Run.User) - dataDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "data") - judgeDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "judge") + dataDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "data") + string(filepath.Separator) + judgeDir := filepath.Join(ProblemDir, fmt.Sprintf("%d", meta.Run.Version), "judge") + string(filepath.Separator) script := meta.Cfg.Lang.JudgeScript() runtimeArgs := RuntimeArgs{