1
0
mirror of https://github.com/fumiama/go-registry.git synced 2026-06-27 06:10:24 +08:00

fix: cat panic

This commit is contained in:
源文雨
2022-11-10 15:06:15 +08:00
parent 42411b3d58
commit 6aef424571

4
reg.go
View File

@@ -25,6 +25,7 @@ var (
ErrNoSuchKey = errors.New("reg: no such key") ErrNoSuchKey = errors.New("reg: no such key")
ErrRawDataTooLong = errors.New("reg: raw data too long") ErrRawDataTooLong = errors.New("reg: raw data too long")
ErrMd5NotEqual = errors.New("reg: md5 not equal") ErrMd5NotEqual = errors.New("reg: md5 not equal")
ErrInvalidCatData = errors.New("reg: invalid cat data")
) )
type Regedit struct { type Regedit struct {
@@ -169,6 +170,9 @@ func (r *Regedit) Cat() (*Storage, error) {
if err != nil { if err != nil {
return nil, err return nil, err
} }
if len(sp.Target) <= 1 {
return nil, ErrInvalidCatData
}
s.m[BytesToString(sp.Target[0])] = BytesToString(sp.Target[1]) s.m[BytesToString(sp.Target[0])] = BytesToString(sp.Target[1])
i += int(sp.RealLen) i += int(sp.RealLen)
} }