summaryrefslogtreecommitdiffstats
path: root/models/issue.go
diff options
context:
space:
mode:
Diffstat (limited to 'models/issue.go')
-rw-r--r--models/issue.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/models/issue.go b/models/issue.go
index 17aef10553..00e0bf8027 100644
--- a/models/issue.go
+++ b/models/issue.go
@@ -964,7 +964,7 @@ func NewIssue(repo *Repository, issue *Issue, labelIDs []int64, uuids []string)
// GetIssueByRef returns an Issue specified by a GFM reference.
// See https://help.github.com/articles/writing-on-github#references for more information on the syntax.
func GetIssueByRef(ref string) (*Issue, error) {
- n := strings.IndexByte(ref, byte('#'))
+ n := strings.IndexByte(ref, '#')
if n == -1 {
return nil, errMissingIssueNumber
}
@@ -974,7 +974,12 @@ func GetIssueByRef(ref string) (*Issue, error) {
return nil, errInvalidIssueNumber
}
- repo, err := GetRepositoryByRef(ref[:n])
+ i := strings.IndexByte(ref[:n], '/')
+ if i < 2 {
+ return nil, ErrInvalidReference
+ }
+
+ repo, err := GetRepositoryByOwnerAndName(ref[:i], ref[i+1:n])
if err != nil {
return nil, err
}