diff options
| author | 2019-04-18 23:29:26 +0000 | |
|---|---|---|
| committer | 2019-04-18 23:29:26 +0000 | |
| commit | 5210624e601f00e22c55cd6d98823e4462ddc1f9 (patch) | |
| tree | 49a6ccbb234f44a5db0338f3f94a28bea1912e97 /services/surfaceflinger/SurfaceFlinger.cpp | |
| parent | e6aef12927d637ae51f3897595f83183f3caf3c7 (diff) | |
| parent | 644996808162d4fae0f3efaf816601ee5ac2b14f (diff) | |
Merge changes Ieb4d16d1,Icef95925 into qt-dev
* changes:
Adding testing for slot generation
Change slot generation for BufferState
Diffstat (limited to 'services/surfaceflinger/SurfaceFlinger.cpp')
| -rw-r--r-- | services/surfaceflinger/SurfaceFlinger.cpp | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 40103b648d..3744f8b0b8 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -75,7 +75,6 @@ #include "BufferLayer.h" #include "BufferQueueLayer.h" #include "BufferStateLayer.h" -#include "BufferStateLayerCache.h" #include "Client.h" #include "ColorLayer.h" #include "Colorizer.h" @@ -3545,7 +3544,7 @@ void SurfaceFlinger::setTransactionState(const Vector<ComposerState>& states, const sp<IBinder>& applyToken, const InputWindowCommands& inputWindowCommands, int64_t desiredPresentTime, - const cached_buffer_t& uncacheBuffer, + const client_cache_t& uncacheBuffer, const std::vector<ListenerCallbacks>& listenerCallbacks) { ATRACE_CALL(); @@ -3577,7 +3576,7 @@ void SurfaceFlinger::applyTransactionState(const Vector<ComposerState>& states, const Vector<DisplayState>& displays, uint32_t flags, const InputWindowCommands& inputWindowCommands, const int64_t desiredPresentTime, - const cached_buffer_t& uncacheBuffer, + const client_cache_t& uncacheBuffer, const std::vector<ListenerCallbacks>& listenerCallbacks, const int64_t postTime, bool privileged, bool isMainThread) { @@ -3627,8 +3626,8 @@ void SurfaceFlinger::applyTransactionState(const Vector<ComposerState>& states, transactionFlags |= addInputWindowCommands(inputWindowCommands); - if (uncacheBuffer.token) { - BufferStateLayerCache::getInstance().erase(uncacheBuffer.token, uncacheBuffer.cacheId); + if (uncacheBuffer.isValid()) { + ClientCache::getInstance().erase(uncacheBuffer); } // If a synchronous transaction is explicitly requested without any changes, force a transaction @@ -3984,17 +3983,15 @@ uint32_t SurfaceFlinger::setClientStateLocked( bool cacheIdChanged = what & layer_state_t::eCachedBufferChanged; sp<GraphicBuffer> buffer; if (bufferChanged && cacheIdChanged) { - BufferStateLayerCache::getInstance().add(s.cachedBuffer.token, s.cachedBuffer.cacheId, - s.buffer); + ClientCache::getInstance().add(s.cachedBuffer, s.buffer); buffer = s.buffer; } else if (cacheIdChanged) { - buffer = BufferStateLayerCache::getInstance().get(s.cachedBuffer.token, - s.cachedBuffer.cacheId); + buffer = ClientCache::getInstance().get(s.cachedBuffer); } else if (bufferChanged) { buffer = s.buffer; } if (buffer) { - if (layer->setBuffer(buffer, postTime, desiredPresentTime)) { + if (layer->setBuffer(buffer, postTime, desiredPresentTime, s.cachedBuffer)) { flags |= eTraversalNeeded; } } |