diff --git a/FrameBuffer.cpp b/FrameBuffer.cpp index 897e5f93..06dcc8a7 100644 --- a/FrameBuffer.cpp +++ b/FrameBuffer.cpp @@ -422,11 +422,11 @@ void FrameBufferList::removeBuffer(u32 _address ) } } -void FrameBufferList::removeBuffers(u32 _width, u32 _height) +void FrameBufferList::removeBuffers(u32 _width) { m_pCurrent = NULL; for (FrameBuffers::iterator iter = m_list.begin(); iter != m_list.end(); ++iter) { - while (iter->m_width == _width && iter->m_height == _height) { + while (iter->m_width == _width) { iter = m_list.erase(iter); if (iter == m_list.end()) return; diff --git a/FrameBuffer.h b/FrameBuffer.h index 4577d7db..9ea7a6f9 100644 --- a/FrameBuffer.h +++ b/FrameBuffer.h @@ -50,7 +50,7 @@ public: void destroy(); void saveBuffer(u32 _address, u16 _format, u16 _size, u16 _width, u16 _height, bool _cfb); void removeBuffer(u32 _address); - void removeBuffers(u32 _width, u32 _height); + void removeBuffers(u32 _width); void attachDepthBuffer(); FrameBuffer * findBuffer(u32 _startAddress); FrameBuffer * findTmpBuffer(u32 _address); diff --git a/VI.cpp b/VI.cpp index 9a206ee8..67c43339 100644 --- a/VI.cpp +++ b/VI.cpp @@ -67,8 +67,8 @@ void VI_UpdateSize() // const int divot = ((*REG.VI_STATUS) >> 4) & 1; if (config.frameBufferEmulation.enable && (interlacedPrev != VI.interlaced || widthPrev != VI.width || heightPrev != VI.height)) { - frameBufferList().removeBuffers(widthPrev, heightPrev); - frameBufferList().removeBuffers(VI.width, VI.height); + frameBufferList().removeBuffers(widthPrev); + frameBufferList().removeBuffers(VI.width); depthBufferList().destroy(); depthBufferList().init(); }