diff --git a/BizHawk.Client.EmuHawk/DisplayManager/DisplayManager.cs b/BizHawk.Client.EmuHawk/DisplayManager/DisplayManager.cs index 110d8201e5..0ec9addf36 100644 --- a/BizHawk.Client.EmuHawk/DisplayManager/DisplayManager.cs +++ b/BizHawk.Client.EmuHawk/DisplayManager/DisplayManager.cs @@ -610,18 +610,19 @@ namespace BizHawk.Client.EmuHawk FilterProgram UpdateSourceInternal(JobInfo job) { - if (job.chain_outsize.Width == 0 || job.chain_outsize.Height == 0) - { - //this has to be a NOP, because lots of stuff will malfunction on a 0-sized viewport - return null; - } - //no drawing actually happens. it's important not to begin drawing on a control if (!job.simulate && !job.offscreen) { GLManager.Activate(CR_GraphicsControl); } + if (job.chain_outsize.Width == 0 || job.chain_outsize.Height == 0) + { + //this has to be a NOP, because lots of stuff will malfunction on a 0-sized viewport + UpdateSourceDrawingWork(job); //but we still need to do this, because of vsync + return null; + } + IVideoProvider videoProvider = job.videoProvider; bool simulate = job.simulate; Size chain_outsize = job.chain_outsize;