From f707d5459885f035d13f85b27e911cc85a583392 Mon Sep 17 00:00:00 2001 From: Konrad Langenberg Date: Sat, 23 Sep 2017 14:59:31 +0200 Subject: [PATCH] simplified depExists method Signed-off-by: Konrad --- models/issue_dependency.go | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/models/issue_dependency.go b/models/issue_dependency.go index 293832a85..15049ddb2 100644 --- a/models/issue_dependency.go +++ b/models/issue_dependency.go @@ -123,27 +123,15 @@ func RemoveIssueDependency(user *User, issue *Issue, dep *Issue, depType int64) // Check if the dependency already exists func issueDepExists(e Engine, issueID int64, depID int64) (exists bool, err error) { - var Dependencies = IssueDependency{IssueID: issueID, DependencyID: depID} - exists, err = e.Get(&Dependencies) + deps := new(IssueDependency) + exists, err = e.Where("(issue_id = ? AND dependency_id = ?) OR (issue_id = ? AND dependency_id = ?)", issueID, depID, depID, issueID).Get(deps) if err != nil { return exists, err } - // Check for dependencies the other way around - // Otherwise two issues could block each other which would result in none of them could be closed. - if !exists { - Dependencies.IssueID = depID - Dependencies.DependencyID = issueID - exists, err = e.Get(&Dependencies) - - if err != nil { - return exists, err - } - } - - return + return exists, nil } // IssueNoDependenciesLeft checks if issue can be closed