=== modified file 'mixxx/src/engine/ratecontrol.cpp' --- mixxx/src/engine/ratecontrol.cpp 2013-04-23 18:13:33 +0000 +++ mixxx/src/engine/ratecontrol.cpp 2013-04-30 17:43:02 +0000 @@ -374,6 +374,7 @@ double RateControl::calculateRate(double baserate, bool paused, int iSamplesPerBuffer, bool* isScratching) { double rate = (paused ? 0 : 1.0); + *isScratching = false; double searching = m_pRateSearch->get(); if (searching) { @@ -386,7 +387,6 @@ double jogFactor = getJogFactor(); bool scratchEnable = m_pScratchToggle->get() != 0 || m_bVinylControlEnabled; - double scratchFactor = m_pScratch->get(); // Don't trust values from m_pScratch if (isnan(scratchFactor)) { @@ -400,8 +400,10 @@ oldScratchFactor = 0.0; } - // If vinyl control is enabled and scratching then also set isScratching - if (m_bVinylControlEnabled && m_bVinylControlScratching) { + // If controller scratching or vinyl control is enabled and scratching + // then also set isScratching. + if (m_pScratchToggle->get() != 0.0 || + (m_bVinylControlEnabled && m_bVinylControlScratching)) { *isScratching = true; }