Index: src/libchcore/TReadBufferQueueWrapper.h
===================================================================
diff -u -N -rda7737de7046ba0ecd255240fb36b4a46584ebf2 -r6c41e7b3cf7711c6f5027c0c0154013f50f08e7b
--- src/libchcore/TReadBufferQueueWrapper.h	(.../TReadBufferQueueWrapper.h)	(revision da7737de7046ba0ecd255240fb36b4a46584ebf2)
+++ src/libchcore/TReadBufferQueueWrapper.h	(.../TReadBufferQueueWrapper.h)	(revision 6c41e7b3cf7711c6f5027c0c0154013f50f08e7b)
@@ -34,6 +34,7 @@
 
 	public:
 		TReadBufferQueueWrapper(const TBufferListPtr& spUnorderedQueue, unsigned long long ullNextReadPosition, DWORD dwChunkSize);
+		~TReadBufferQueueWrapper();
 
 		void Push(TOverlappedDataBuffer* pBuffer, bool bKeepPosition);
 		TOverlappedDataBuffer* Pop();
@@ -49,9 +50,12 @@
 	private:
 		bool IsBufferReady() const;
 		void UpdateHasBuffers();
+		void UpdateHasBuffers(bool bAdded);
 
 	private:
 		TBufferListPtr m_spUnorderedQueue;		// external queue of buffers to use
+		boost::signals2::connection m_emptyBuffersQueueConnector;
+
 		TSimpleOrderedBufferQueue m_tClaimedQueue;	// internal queue of claimed buffers
 
 		TEvent m_eventHasBuffers;