diff options
author | Jason Sams <rjsams@android.com> | 2011-08-17 17:15:23 -0700 |
---|---|---|
committer | Jason Sams <rjsams@android.com> | 2011-08-17 17:15:23 -0700 |
commit | 85deb781658e870556c305c523fa7f2bf679efe3 (patch) | |
tree | 724ae41fd50cc0694bb572e110491c5b16967e8e /libs | |
parent | c1b4c1ff9b2f9e691089f96e5b926b638d5b0e6a (diff) | |
download | frameworks_base-85deb781658e870556c305c523fa7f2bf679efe3.zip frameworks_base-85deb781658e870556c305c523fa7f2bf679efe3.tar.gz frameworks_base-85deb781658e870556c305c523fa7f2bf679efe3.tar.bz2 |
Fix "return 0" behavior in rs
0 was not properly blocking for the next message.
Change-Id: I0d9f0a8f799ba457197920c6a699f80f496eaa8e
Diffstat (limited to 'libs')
-rw-r--r-- | libs/rs/rsContext.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/rs/rsContext.cpp b/libs/rs/rsContext.cpp index f65dd47..8996ad1 100644 --- a/libs/rs/rsContext.cpp +++ b/libs/rs/rsContext.cpp @@ -252,10 +252,11 @@ void * Context::threadProc(void *vrsc) { while (!rsc->mExit) { uint64_t waitTime = 0; uint64_t now = rsc->getTime(); - if (now < targetTime) { - waitTime = targetTime - now; - } else { - doWait = false; + if (!doWait) { + if (now < targetTime) { + waitTime = targetTime - now; + doWait = true; + } } mDraw |= rsc->mIO.playCoreCommands(rsc, doWait, waitTime); @@ -265,7 +266,7 @@ void * Context::threadProc(void *vrsc) { if (mDraw && rsc->mIsGraphicsContext) { uint64_t delay = rsc->runRootScript() * 1000000; targetTime = rsc->getTime() + delay; - doWait = delay != 0; + doWait = (delay == 0); if (rsc->props.mLogVisual) { rsc->displayDebugStats(); |