Refactor: Remove VarInt type, replace with int32, and consolidate encoding/decoding logic

This commit is contained in:
adman
2025-12-24 00:29:43 +01:00
parent 2f81976fe8
commit dd41115ca2
10 changed files with 41 additions and 32 deletions
+4 -6
View File
@@ -16,19 +16,17 @@ const (
)
func UnpackArrayPalette(r io.Reader, bitsPerEntry uint8, numberOfEntries int) (data []int32, err error) {
var palletLen proto_base.VarInt
palletLen, err = palletLen.Decode(r)
palletLen, err := proto_base.DecodeVarInt(r)
if err != nil {
return
}
var pallet []int32 // remember we can't use make because this is user-controlled data
for range palletLen {
var entry proto_base.VarInt
entry, err = proto_base.VarInt(0).Decode(r)
entry, err := proto_base.DecodeVarInt(r)
if err != nil {
return
}
pallet = append(pallet, int32(entry))
pallet = append(pallet, entry)
}
data, err = UnpackLongData(r, bitsPerEntry, numberOfEntries)
for i, b := range data {
@@ -56,7 +54,7 @@ func UnpackLongData(r io.Reader, bitsPerEntry uint8, numberOfEntries int) (data
}
func UnpackSingleValuePalette(r io.Reader, numberOfEntries int) (data []int32, err error) {
entry, err := proto_base.VarInt(0).Decode(r)
entry, err := proto_base.DecodeVarInt(r)
if err != nil {
return
}