crash fix for initialized map

This commit is contained in:
shoopea
2021-11-09 17:45:01 +08:00
parent a100fb6c68
commit 8d580181bf
4 changed files with 56 additions and 14 deletions

View File

@@ -380,14 +380,26 @@ func (p *PacketServerCompanyNew) Read(b []byte) {
}
func (p *PacketServerCompanyInfo) Read(b []byte) {
var err error
r := bufio.NewReader(bytes.NewReader(b))
r.Discard(3)
c, _ := r.ReadByte()
p.CompanyID = uint8(c)
p.Name, _ = r.ReadString(0)
p.Name = p.Name[:len(p.Name)-1]
p.President, _ = r.ReadString(0)
p.President = p.President[:len(p.President)-1]
p.Name, err = r.ReadString(0)
logErrorDebug(err, "PacketServerCompanyInfo.Read : Name")
if err != nil {
p.Name = "Error"
} else {
p.Name = p.Name[:len(p.Name)-1]
}
p.President, err = r.ReadString(0)
logErrorDebug(err, "PacketServerCompanyInfo.Read : President")
if err != nil {
p.President = "Error"
} else {
p.President = p.President[:len(p.President)-1]
}
c, _ = r.ReadByte()
p.Color = uint8(c)
c, _ = r.ReadByte()
@@ -410,14 +422,25 @@ func (p *PacketServerCompanyInfo) Read(b []byte) {
}
func (p *PacketServerCompanyUpdate) Read(b []byte) {
var err error
r := bufio.NewReader(bytes.NewReader(b))
r.Discard(3)
c, _ := r.ReadByte()
p.CompanyID = uint8(c)
p.Name, _ = r.ReadString(0)
p.Name = p.Name[:len(p.Name)-1]
p.Name, err = r.ReadString(0)
logErrorDebug(err, "PacketServerCompanyUpdate.Read : Name")
if err != nil {
p.Name = "Error"
} else {
p.Name = p.Name[:len(p.Name)-1]
}
p.President, _ = r.ReadString(0)
p.President = p.President[:len(p.President)-1]
logErrorDebug(err, "PacketServerCompanyUpdate.Read : President")
if err != nil {
p.President = "Error"
} else {
p.President = p.President[:len(p.President)-1]
}
c, _ = r.ReadByte()
p.Color = uint8(c)
c, _ = r.ReadByte()