1
0
Fork 0
mirror of https://github.com/vbatts/go-mtree.git synced 2024-12-22 13:56:30 +00:00

dont use slices

This commit is contained in:
thesayyn 2023-11-01 14:10:04 -07:00
parent 17374843eb
commit b062bc1c68
No known key found for this signature in database
GPG key ID: D10C0AE203D0E4A8
2 changed files with 12 additions and 12 deletions

View file

@ -5,7 +5,6 @@ import (
"io"
"math"
"os"
"slices"
"strings"
cli "github.com/urfave/cli/v2"
@ -76,20 +75,21 @@ func mutateAction(c *cli.Context) error {
&tidyVisitor,
}
dropped := []int{}
dropped := map[int]bool{}
entries := []mtree.Entry{}
skip:
for _, entry := range spec.Entries {
if entry.Parent != nil && slices.Contains(dropped, entry.Parent.Pos) {
if entry.Type == mtree.DotDotType {
// directory for this .. has been dropped so shall this
continue
if entry.Parent != nil {
if _, ok := dropped[entry.Parent.Pos]; ok {
if entry.Type == mtree.DotDotType {
// directory for this .. has been dropped so shall this
continue
}
entry.Parent = entry.Parent.Parent
// TODO: i am not sure if this is the correct behavior
entry.Raw = strings.TrimPrefix(entry.Raw, " ")
}
entry.Parent = entry.Parent.Parent
// TODO: i am not sure if this is the correct behavior
entry.Raw = strings.TrimPrefix(entry.Raw, " ")
}
for _, visitor := range visitors {
@ -99,7 +99,7 @@ skip:
}
if drop {
dropped = append(dropped, entry.Pos)
dropped[entry.Pos] = true
continue skip
}
}

2
go.mod
View file

@ -1,6 +1,6 @@
module github.com/vbatts/go-mtree
go 1.18
go 1.17
require (
github.com/davecgh/go-spew v1.1.1