Index: src/ch/DataBuffer.h
===================================================================
diff -u -N -r5057e08b0cc064972abeb94a488e5f12d9db14a0 -r45cf96558ba334192ef42687d4dac01c46d6ffd8
--- src/ch/DataBuffer.h	(.../DataBuffer.h)	(revision 5057e08b0cc064972abeb94a488e5f12d9db14a0)
+++ src/ch/DataBuffer.h	(.../DataBuffer.h)	(revision 45cf96558ba334192ef42687d4dac01c46d6ffd8)
@@ -71,8 +71,8 @@
 class CDataBuffer
 {
 public:
-	CDataBuffer() { m_pBuffer=NULL; m_uiRealSize=0; m_bsSizes.m_uiDefaultSize=0; m_bsSizes.m_uiOneDiskSize=0; m_bsSizes.m_uiTwoDisksSize=0; m_bsSizes.m_uiCDSize=0; m_bsSizes.m_uiLANSize=0; m_bsSizes.m_bOnlyDefault=false; };
-	~CDataBuffer() { Delete(); };
+	CDataBuffer();
+	~CDataBuffer();
 
 	const BUFFERSIZES* Create(const BUFFERSIZES* pbsSizes);	// (re)allocates the buffer; if there's an error - restores previous buffer size
 	void Delete();				// deletes buffer
@@ -85,6 +85,9 @@
 	UINT GetLANSize() { return m_bsSizes.m_uiLANSize; };
 	const BUFFERSIZES* GetSizes() { return &m_bsSizes; }; 
 
+	// shifts data from buffer from position uiCount to 0 (effectively cuts uiCount bytes of data at the beginning of buffer)
+	void CutDataFromBuffer(UINT uiCount);
+
 	// operators
 	operator unsigned char*() { return m_pBuffer; };