bump containerd/continuity aaeac12a7ffcd198ae25440a9dff125c2e2703a7
- containerd/continuity#140 Fix directory comparison in changes Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
parent
3e4723cf33
commit
447cbff50a
|
@ -121,7 +121,7 @@ google.golang.org/genproto 694d95ba50e67b2e363f3483057d
|
||||||
# containerd
|
# containerd
|
||||||
github.com/containerd/containerd ceba56893a76f22cf0126c46d835c80fb3833408
|
github.com/containerd/containerd ceba56893a76f22cf0126c46d835c80fb3833408
|
||||||
github.com/containerd/fifo a9fb20d87448d386e6d50b1f2e1fa70dcf0de43c
|
github.com/containerd/fifo a9fb20d87448d386e6d50b1f2e1fa70dcf0de43c
|
||||||
github.com/containerd/continuity 004b46473808b3e7a4a3049c20e4376c91eb966d
|
github.com/containerd/continuity aaeac12a7ffcd198ae25440a9dff125c2e2703a7
|
||||||
github.com/containerd/cgroups 4994991857f9b0ae8dc439551e8bebdbb4bf66c1
|
github.com/containerd/cgroups 4994991857f9b0ae8dc439551e8bebdbb4bf66c1
|
||||||
github.com/containerd/console c12b1e7919c14469339a5d38f2f8ed9b64a9de23
|
github.com/containerd/console c12b1e7919c14469339a5d38f2f8ed9b64a9de23
|
||||||
github.com/containerd/go-runc 7d11b49dc0769f6dbb0d1b19f3d48524d1bad9ad
|
github.com/containerd/go-runc 7d11b49dc0769f6dbb0d1b19f3d48524d1bad9ad
|
||||||
|
|
|
@ -22,7 +22,6 @@ import (
|
||||||
"io"
|
"io"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"strings"
|
|
||||||
|
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
)
|
)
|
||||||
|
@ -47,9 +46,8 @@ func pathChange(lower, upper *currentPath) (ChangeKind, string) {
|
||||||
if upper == nil {
|
if upper == nil {
|
||||||
return ChangeKindDelete, lower.path
|
return ChangeKindDelete, lower.path
|
||||||
}
|
}
|
||||||
// TODO: compare by directory
|
|
||||||
|
|
||||||
switch i := strings.Compare(lower.path, upper.path); {
|
switch i := directoryCompare(lower.path, upper.path); {
|
||||||
case i < 0:
|
case i < 0:
|
||||||
// File in lower that is not in upper
|
// File in lower that is not in upper
|
||||||
return ChangeKindDelete, lower.path
|
return ChangeKindDelete, lower.path
|
||||||
|
@ -61,6 +59,35 @@ func pathChange(lower, upper *currentPath) (ChangeKind, string) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func directoryCompare(a, b string) int {
|
||||||
|
l := len(a)
|
||||||
|
if len(b) < l {
|
||||||
|
l = len(b)
|
||||||
|
}
|
||||||
|
for i := 0; i < l; i++ {
|
||||||
|
c1, c2 := a[i], b[i]
|
||||||
|
if c1 == filepath.Separator {
|
||||||
|
c1 = byte(0)
|
||||||
|
}
|
||||||
|
if c2 == filepath.Separator {
|
||||||
|
c2 = byte(0)
|
||||||
|
}
|
||||||
|
if c1 < c2 {
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
if c1 > c2 {
|
||||||
|
return +1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if len(a) < len(b) {
|
||||||
|
return -1
|
||||||
|
}
|
||||||
|
if len(a) > len(b) {
|
||||||
|
return +1
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
func sameFile(f1, f2 *currentPath) (bool, error) {
|
func sameFile(f1, f2 *currentPath) (bool, error) {
|
||||||
if os.SameFile(f1.f, f2.f) {
|
if os.SameFile(f1.f, f2.f) {
|
||||||
return true, nil
|
return true, nil
|
||||||
|
|
Loading…
Reference in New Issue