it is needed since it could possible m_startHighlight == m_endHighlight == 0, that means no highlight.