]> source.dussan.org Git - gitea.git/commitdiff
Use path not filepath in routers/editor (#14390) (#14396)
author6543 <6543@obermui.de>
Tue, 19 Jan 2021 09:00:13 +0000 (10:00 +0100)
committerGitHub <noreply@github.com>
Tue, 19 Jan 2021 09:00:13 +0000 (17:00 +0800)
The incorrect use of filepath instead of path means that
it is possible to cause a stackoverflow on Windows

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lauris BH <lauris@nix.lv>
routers/repo/editor.go

index 1ee557a4fdf1e9a66d6ce21216f1e9ff52b52cb0..bbdb83d5a75837879d2c40a7b6f3d0ca27d3d30c 100644 (file)
@@ -9,7 +9,6 @@ import (
        "fmt"
        "io/ioutil"
        "path"
-       "path/filepath"
        "strings"
 
        "code.gitea.io/gitea/models"
@@ -502,7 +501,7 @@ func DeleteFilePost(ctx *context.Context, form auth.DeleteRepoFileForm) {
        if form.CommitChoice == frmCommitChoiceNewBranch && ctx.Repo.Repository.UnitEnabled(models.UnitTypePullRequests) {
                ctx.Redirect(ctx.Repo.RepoLink + "/compare/" + ctx.Repo.BranchName + "..." + form.NewBranchName)
        } else {
-               treePath := filepath.Dir(ctx.Repo.TreePath)
+               treePath := path.Dir(ctx.Repo.TreePath)
                if treePath == "." {
                        treePath = "" // the file deleted was in the root, so we return the user to the root directory
                }
@@ -805,10 +804,10 @@ func GetClosestParentWithFiles(treePath string, commit *git.Commit) string {
        // see if the tree has entries
        if tree, err := commit.SubTree(treePath); err != nil {
                // failed to get tree, going up a dir
-               return GetClosestParentWithFiles(filepath.Dir(treePath), commit)
+               return GetClosestParentWithFiles(path.Dir(treePath), commit)
        } else if entries, err := tree.ListEntries(); err != nil || len(entries) == 0 {
                // no files in this dir, going up a dir
-               return GetClosestParentWithFiles(filepath.Dir(treePath), commit)
+               return GetClosestParentWithFiles(path.Dir(treePath), commit)
        }
        return treePath
 }