forked from NYANDEV/forgejo
Fix missing check (#28406)
This commit is contained in:
parent
aeb383025f
commit
9a99c17a14
2 changed files with 24 additions and 4 deletions
|
@ -193,16 +193,30 @@ func SoftDeleteContentHistory(ctx *context.Context) {
|
||||||
var comment *issues_model.Comment
|
var comment *issues_model.Comment
|
||||||
var history *issues_model.ContentHistory
|
var history *issues_model.ContentHistory
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
|
if history, err = issues_model.GetIssueContentHistoryByID(ctx, historyID); err != nil {
|
||||||
|
log.Error("can not get issue content history %v. err=%v", historyID, err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if history.IssueID != issue.ID {
|
||||||
|
ctx.NotFound("CompareRepoID", issues_model.ErrCommentNotExist{})
|
||||||
|
return
|
||||||
|
}
|
||||||
if commentID != 0 {
|
if commentID != 0 {
|
||||||
|
if history.CommentID != commentID {
|
||||||
|
ctx.NotFound("CompareCommentID", issues_model.ErrCommentNotExist{})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
if comment, err = issues_model.GetCommentByID(ctx, commentID); err != nil {
|
if comment, err = issues_model.GetCommentByID(ctx, commentID); err != nil {
|
||||||
log.Error("can not get comment for issue content history %v. err=%v", historyID, err)
|
log.Error("can not get comment for issue content history %v. err=%v", historyID, err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
if comment.IssueID != issue.ID {
|
||||||
if history, err = issues_model.GetIssueContentHistoryByID(ctx, historyID); err != nil {
|
ctx.NotFound("CompareIssueID", issues_model.ErrCommentNotExist{})
|
||||||
log.Error("can not get issue content history %v. err=%v", historyID, err)
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
canSoftDelete := canSoftDeleteContentHistory(ctx, issue, comment, history)
|
canSoftDelete := canSoftDeleteContentHistory(ctx, issue, comment, history)
|
||||||
if !canSoftDelete {
|
if !canSoftDelete {
|
||||||
|
|
|
@ -90,6 +90,12 @@ func IssuePinMove(ctx *context.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if issue.RepoID != ctx.Repo.Repository.ID {
|
||||||
|
ctx.Status(http.StatusNotFound)
|
||||||
|
log.Error("Issue does not belong to this repository")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
err = issue.MovePin(ctx, form.Position)
|
err = issue.MovePin(ctx, form.Position)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
ctx.Status(http.StatusInternalServerError)
|
ctx.Status(http.StatusInternalServerError)
|
||||||
|
|
Loading…
Reference in a new issue