- Improve Fifo_Init() and Fifo_ExitLoop() for avoid Crashes when the emulation Start and Stop.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7159 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Marcos Vitali 2011-02-13 04:10:40 +00:00
parent 05feabdb49
commit cd9ec1805a

View file

@ -52,8 +52,9 @@ void Fifo_DoState(PointerWrap &p)
}
void Fifo_Init()
{
{
videoBuffer = (u8*)AllocateMemoryPages(FIFO_SIZE);
size = 0;
fifoStateRun = false;
}
@ -84,7 +85,8 @@ void Fifo_ExitLoop()
{
// This should break the wait loop in CPU thread
CommandProcessor::fifo.bFF_GPReadEnable = false;
CommandProcessor::SetFifoIdleFromVideoPlugin();
SCPFifoStruct &_fifo = CommandProcessor::fifo;
while(_fifo.isFifoProcesingData) Common::YieldCPU();
// Terminate GPU thread loop
fifoStateRun = false;
EmuRunning = true;