mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-10 07:25:50 +01:00
(refs #788)Fix NotFound in comparing with sibling repository
This commit is contained in:
@@ -281,12 +281,18 @@ trait PullRequestsControllerBase extends ControllerBase {
|
|||||||
val (forkedOwner, forkedId) = parseCompareIdentifie(forked, forkedRepository.owner)
|
val (forkedOwner, forkedId) = parseCompareIdentifie(forked, forkedRepository.owner)
|
||||||
|
|
||||||
(for(
|
(for(
|
||||||
originRepositoryName <- if(originOwner == forkedOwner){
|
originRepositoryName <- if(originOwner == forkedOwner) {
|
||||||
|
// Self repository
|
||||||
Some(forkedRepository.name)
|
Some(forkedRepository.name)
|
||||||
|
} else if(Some(originOwner) == forkedRepository.repository.originUserName){
|
||||||
|
// Original repository
|
||||||
|
forkedRepository.repository.originRepositoryName
|
||||||
} else {
|
} else {
|
||||||
forkedRepository.repository.originRepositoryName.orElse {
|
// Sibling repository
|
||||||
getForkedRepositories(forkedRepository.owner, forkedRepository.name).find(_._1 == originOwner).map(_._2)
|
getUserRepositories(originOwner, context.baseUrl).find { x =>
|
||||||
}
|
x.repository.originUserName == forkedRepository.repository.originUserName &&
|
||||||
|
x.repository.originRepositoryName == forkedRepository.repository.originRepositoryName
|
||||||
|
}.map(_.repository.repositoryName)
|
||||||
};
|
};
|
||||||
originRepository <- getRepository(originOwner, originRepositoryName, context.baseUrl)
|
originRepository <- getRepository(originOwner, originRepositoryName, context.baseUrl)
|
||||||
) yield {
|
) yield {
|
||||||
|
|||||||
Reference in New Issue
Block a user