mirror of
https://github.com/gitbucket/gitbucket.git
synced 2025-11-02 19:45:57 +01:00
BufFix for the repository viewer.
This commit is contained in:
@@ -6,9 +6,9 @@ import scala.collection.JavaConverters._
|
|||||||
import javax.servlet.ServletContext
|
import javax.servlet.ServletContext
|
||||||
import org.eclipse.jgit.lib._
|
import org.eclipse.jgit.lib._
|
||||||
import org.eclipse.jgit.revwalk._
|
import org.eclipse.jgit.revwalk._
|
||||||
import org.eclipse.jgit.revwalk.filter.RevFilter
|
import org.eclipse.jgit.revwalk.filter._
|
||||||
import org.eclipse.jgit.treewalk._
|
import org.eclipse.jgit.treewalk._
|
||||||
import org.eclipse.jgit.treewalk.filter.PathFilter
|
import org.eclipse.jgit.treewalk.filter._
|
||||||
import org.eclipse.jgit.diff._
|
import org.eclipse.jgit.diff._
|
||||||
import org.eclipse.jgit.diff.DiffEntry.ChangeType
|
import org.eclipse.jgit.diff.DiffEntry.ChangeType
|
||||||
import org.eclipse.jgit.util.io.DisabledOutputStream
|
import org.eclipse.jgit.util.io.DisabledOutputStream
|
||||||
@@ -144,9 +144,27 @@ object JGitUtil {
|
|||||||
treeWalk.addTree(revCommit.getTree)
|
treeWalk.addTree(revCommit.getTree)
|
||||||
if(path != "."){
|
if(path != "."){
|
||||||
treeWalk.setRecursive(true)
|
treeWalk.setRecursive(true)
|
||||||
treeWalk.setFilter(PathFilter.create(path))
|
treeWalk.setFilter(new TreeFilter(){
|
||||||
treeWalk.next()
|
|
||||||
treeWalk.setRecursive(false)
|
var stopRecursive = false
|
||||||
|
|
||||||
|
def include(walker: TreeWalk): Boolean = {
|
||||||
|
val targetPath = walker.getPathString
|
||||||
|
if((path + "/").startsWith(targetPath)){
|
||||||
|
true
|
||||||
|
} else if(targetPath.startsWith(path + "/") && targetPath.substring(path.length + 1).indexOf("/") < 0){
|
||||||
|
stopRecursive = true
|
||||||
|
treeWalk.setRecursive(false)
|
||||||
|
true
|
||||||
|
} else {
|
||||||
|
false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
def shouldBeRecursive(): Boolean = !stopRecursive
|
||||||
|
|
||||||
|
override def clone: TreeFilter = return this
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
val list = new scala.collection.mutable.ListBuffer[FileInfo]
|
val list = new scala.collection.mutable.ListBuffer[FileInfo]
|
||||||
|
|||||||
@@ -6,11 +6,11 @@
|
|||||||
@navtab(branch, repository, "files")
|
@navtab(branch, repository, "files")
|
||||||
<div class="head">
|
<div class="head">
|
||||||
<a href="@path/@repository.owner/@repository.name/tree/@branch">@repository.name</a> /
|
<a href="@path/@repository.owner/@repository.name/tree/@branch">@repository.name</a> /
|
||||||
@pathList.zipWithIndex.map { case (path, i) =>
|
@pathList.zipWithIndex.map { case (section, i) =>
|
||||||
@if(i == pathList.length - 1){
|
@if(i == pathList.length - 1){
|
||||||
@path
|
@section
|
||||||
} else {
|
} else {
|
||||||
<a href="@path/@repository.owner/@repository.name/tree/@branch/@pathList.take(i + 1).mkString("/")">@path</a> /
|
<a href="@path/@repository.owner/@repository.name/tree/@branch/@pathList.take(i + 1).mkString("/")">@section</a> /
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user