summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--models/repo_branch.go2
-rw-r--r--routers/api/v1/repo/branch.go7
-rw-r--r--routers/api/v1/repo/file.go5
3 files changed, 12 insertions, 2 deletions
diff --git a/models/repo_branch.go b/models/repo_branch.go
index fcfd3e8ecb..4821902e37 100644
--- a/models/repo_branch.go
+++ b/models/repo_branch.go
@@ -39,7 +39,7 @@ func GetBranchesByPath(path string) ([]*Branch, error) {
// GetBranch returns a branch by it's name
func (repo *Repository) GetBranch(branch string) (*Branch, error) {
if !git.IsBranchExist(repo.RepoPath(), branch) {
- return nil, &ErrBranchNotExist{branch}
+ return nil, ErrBranchNotExist{branch}
}
return &Branch{
Path: repo.RepoPath(),
diff --git a/routers/api/v1/repo/branch.go b/routers/api/v1/repo/branch.go
index 3c73ae62c2..489fbe6b4e 100644
--- a/routers/api/v1/repo/branch.go
+++ b/routers/api/v1/repo/branch.go
@@ -7,6 +7,7 @@ package repo
import (
api "code.gitea.io/sdk/gitea"
+ "code.gitea.io/gitea/models"
"code.gitea.io/gitea/modules/context"
"code.gitea.io/gitea/routers/api/v1/convert"
)
@@ -16,7 +17,11 @@ import (
func GetBranch(ctx *context.APIContext) {
branch, err := ctx.Repo.Repository.GetBranch(ctx.Params(":branchname"))
if err != nil {
- ctx.Error(500, "GetBranch", err)
+ if models.IsErrBranchNotExist(err) {
+ ctx.Error(404, "GetBranch", err)
+ } else {
+ ctx.Error(500, "GetBranch", err)
+ }
return
}
diff --git a/routers/api/v1/repo/file.go b/routers/api/v1/repo/file.go
index 16a31f96c7..9d12a6e136 100644
--- a/routers/api/v1/repo/file.go
+++ b/routers/api/v1/repo/file.go
@@ -20,6 +20,11 @@ func GetRawFile(ctx *context.APIContext) {
return
}
+ if ctx.Repo.Repository.IsBare {
+ ctx.Status(404)
+ return
+ }
+
blob, err := ctx.Repo.Commit.GetBlobByPath(ctx.Repo.TreePath)
if err != nil {
if git.IsErrNotExist(err) {