diff --git a/routers/repo/http.go b/routers/repo/http.go index f4cc00aaf..c5856d603 100644 --- a/routers/repo/http.go +++ b/routers/repo/http.go @@ -47,13 +47,21 @@ func Http(ctx *middleware.Context, params martini.Params) { repoUser, err := models.GetUserByName(username) if err != nil { - ctx.Handle(500, "repo.GetUserByName", nil) + if err == models.ErrUserNotExist { + ctx.Handle(404, "repo.Http(GetUserByName)", nil) + } else { + ctx.Handle(500, "repo.Http(GetUserByName)", nil) + } return } repo, err := models.GetRepositoryByName(repoUser.Id, reponame) if err != nil { - ctx.Handle(500, "repo.GetRepositoryByName", nil) + if err == models.ErrRepoNotExist { + ctx.Handle(404, "repo.Http(GetRepositoryByName)", nil) + } else { + ctx.Handle(500, "repo.Http(GetRepositoryByName)", nil) + } return }