max zero area start can be bigger than m_end if data is removed from end of buffer
--- a/src/common/buffer.cc Mon Sep 10 16:55:26 2007 +0200
+++ b/src/common/buffer.cc Mon Sep 10 16:57:25 2007 +0200
@@ -163,7 +163,7 @@
bool dirtyOk =
m_start >= m_data->m_dirtyStart &&
m_end <= m_data->m_dirtyEnd;
- bool maxZeroOk = m_maxZeroAreaStart <= m_end;
+ bool maxZeroOk = m_maxZeroAreaStart <= m_data->m_size;
bool internalSizeOk = m_end - (m_zeroAreaEnd - m_zeroAreaStart) <= m_data->m_size &&
m_start <= m_data->m_size &&
m_zeroAreaStart <= m_data->m_size;