X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/b23e0f70b3b0e6815b784f29cbe7d09982116c41..aec06d4c574979c24e7ef10c352f7a2d22e79177:/lib/gdi/grc.cpp diff --git a/lib/gdi/grc.cpp b/lib/gdi/grc.cpp index 5ef68332..dff6b059 100644 --- a/lib/gdi/grc.cpp +++ b/lib/gdi/grc.cpp @@ -164,7 +164,13 @@ void *gRC::thread() if (pthread_cond_timedwait(&cond, &mutex, &timeout) == ETIMEDOUT) { if (eApp && !eApp->isIdle()) - idle = 0; + { + int idle_count = eApp->idleCount(); + if (idle_count == m_prev_idle_count) + idle = 0; + else + m_prev_idle_count = idle_count; + } } if (!idle) @@ -330,6 +336,7 @@ void gPainter::renderPara(eTextPara *para, ePoint offset) { if ( m_dc->islocked() ) return; + ASSERT(para); gOpcode o; o.opcode=gOpcode::renderPara; o.dc = m_dc.grabRef(); @@ -409,6 +416,7 @@ void gPainter::setPalette(gRGB *colors, int start, int len) { if ( m_dc->islocked() ) return; + ASSERT(colors); gOpcode o; o.opcode=gOpcode::setPalette; o.dc = m_dc.grabRef(); @@ -434,6 +442,7 @@ void gPainter::mergePalette(gPixmap *target) { if ( m_dc->islocked() ) return; + ASSERT(target); gOpcode o; o.opcode = gOpcode::mergePalette; o.dc = m_dc.grabRef(); @@ -569,7 +578,7 @@ void gPainter::setCompositing(gCompositingData *comp) m_rc->submit(o); } -void gPainter::end() +void gPainter::flush() { if ( m_dc->islocked() ) return; @@ -579,6 +588,12 @@ void gPainter::end() m_rc->submit(o); } +void gPainter::end() +{ + if ( m_dc->islocked() ) + return; +} + gDC::gDC() { m_spinner_pic = 0;