aboutsummaryrefslogtreecommitdiff
path: root/diff/trees/path.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-02-21 13:29:38 +0800
committerGravatar Runxi Yu2026-02-21 13:29:38 +0800
commit70916ec7713442a1f9b80f394b980ac2ab5a92df (patch)
tree48b64c77008694c6fabe98ffaf6d77d2abfc8359 /diff/trees/path.go
parentdiff/lines: Line-based diffs via Myers (diff)
signatureNo signature
diff/trees: Add tree-diffing routines
Diffstat (limited to 'diff/trees/path.go')
-rw-r--r--diff/trees/path.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/diff/trees/path.go b/diff/trees/path.go
new file mode 100644
index 00000000..0ced379a
--- /dev/null
+++ b/diff/trees/path.go
@@ -0,0 +1,14 @@
+package trees
+
+func joinPath(prefix, name []byte) []byte {
+ if len(prefix) == 0 {
+ out := make([]byte, len(name))
+ copy(out, name)
+ return out
+ }
+ out := make([]byte, len(prefix)+1+len(name))
+ copy(out, prefix)
+ out[len(prefix)] = '/'
+ copy(out[len(prefix)+1:], name)
+ return out
+}