diff options
Diffstat (limited to 'datasrc')
| -rw-r--r-- | datasrc/datatypes.py | 8 | ||||
| -rw-r--r-- | datasrc/network.py | 18 |
2 files changed, 17 insertions, 9 deletions
diff --git a/datasrc/datatypes.py b/datasrc/datatypes.py index e4459e48..4e293ab1 100644 --- a/datasrc/datatypes.py +++ b/datasrc/datatypes.py @@ -294,6 +294,14 @@ class NetString(NetVariable): def emit_pack(self): return ["pPacker->AddString(%s, -1);" % self.name] +class NetStringStrict(NetVariable): + def emit_declaration(self): + return ["const char *%s;"%self.name] + def emit_unpack(self): + return ["pMsg->%s = pUnpacker->GetString(CUnpacker::SANITIZE_CC|CUnpacker::SKIP_START_WHITESPACES);" % self.name] + def emit_pack(self): + return ["pPacker->AddString(%s, -1);" % self.name] + class NetIntAny(NetVariable): def emit_declaration(self): return ["int %s;"%self.name] diff --git a/datasrc/network.py b/datasrc/network.py index e31c0b3d..e01dba63 100644 --- a/datasrc/network.py +++ b/datasrc/network.py @@ -237,13 +237,13 @@ Messages = [ ]), NetMessage("Sv_VoteOption", [ - NetString("m_pCommand"), + NetStringStrict("m_pCommand"), ]), NetMessage("Sv_VoteSet", [ NetIntRange("m_Timeout", 0, 60), - NetString("m_pDescription"), - NetString("m_pCommand"), + NetStringStrict("m_pDescription"), + NetStringStrict("m_pCommand"), ]), NetMessage("Sv_VoteStatus", [ @@ -264,16 +264,16 @@ Messages = [ ]), NetMessage("Cl_StartInfo", [ - NetString("m_pName"), - NetString("m_pSkin"), + NetStringStrict("m_pName"), + NetStringStrict("m_pSkin"), NetBool("m_UseCustomColor"), NetIntAny("m_ColorBody"), NetIntAny("m_ColorFeet"), ]), NetMessage("Cl_ChangeInfo", [ - NetString("m_pName"), - NetString("m_pSkin"), + NetStringStrict("m_pName"), + NetStringStrict("m_pSkin"), NetBool("m_UseCustomColor"), NetIntAny("m_ColorBody"), NetIntAny("m_ColorFeet"), @@ -290,7 +290,7 @@ Messages = [ ]), NetMessage("Cl_CallVote", [ - NetString("m_Type"), - NetString("m_Value"), + NetStringStrict("m_Type"), + NetStringStrict("m_Value"), ]), ] |