about summary refs log tree commit diff
path: root/src/engine/shared/packer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/shared/packer.cpp')
-rw-r--r--src/engine/shared/packer.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/engine/shared/packer.cpp b/src/engine/shared/packer.cpp
index 3e1d8dd6..53a74754 100644
--- a/src/engine/shared/packer.cpp
+++ b/src/engine/shared/packer.cpp
@@ -114,7 +114,7 @@ int CUnpacker::GetInt()
 	return i;
 }
 
-const char *CUnpacker::GetString()
+const char *CUnpacker::GetString(int SanitizeType)
 {
 	if(m_Error || m_pCurrent >= m_pEnd)
 		return "";
@@ -132,8 +132,11 @@ const char *CUnpacker::GetString()
 	m_pCurrent++;
 	
 	// sanitize all strings
-	str_sanitize(pPtr);
-	return pPtr;
+	if(SanitizeType&SANITIZE)
+		str_sanitize(pPtr);
+	else if(SanitizeType&SANITIZE_CC)
+		str_sanitize_cc(pPtr);
+	return SanitizeType&SKIP_START_WHITESPACES ? str_skip_whitespaces(pPtr) : pPtr;
 }
 
 const unsigned char *CUnpacker::GetRaw(int Size)