diff options
4 files changed, 33 insertions, 5 deletions
diff --git a/core/java/android/view/autofill/OWNERS b/core/java/android/view/autofill/OWNERS index 108c42cdde2a..8720844e5fe9 100644 --- a/core/java/android/view/autofill/OWNERS +++ b/core/java/android/view/autofill/OWNERS @@ -1,7 +1,7 @@ # Bug component: 351486 -augale@google.com -joannechung@google.com -markpun@google.com -lpeter@google.com -tymtsai@google.com +simranjit@google.com +haoranzhang@google.com +skxu@google.com +yunicorn@google.com + diff --git a/libs/hwui/renderthread/VulkanSurface.cpp b/libs/hwui/renderthread/VulkanSurface.cpp index 666f32939206..cbee104aa3b0 100644 --- a/libs/hwui/renderthread/VulkanSurface.cpp +++ b/libs/hwui/renderthread/VulkanSurface.cpp @@ -368,6 +368,14 @@ void VulkanSurface::releaseBuffers() { } } +void VulkanSurface::invalidateBuffers() { + for (uint32_t i = 0; i < mWindowInfo.bufferCount; i++) { + VulkanSurface::NativeBufferInfo& bufferInfo = mNativeBuffers[i]; + bufferInfo.hasValidContents = false; + bufferInfo.lastPresentedCount = 0; + } +} + VulkanSurface::NativeBufferInfo* VulkanSurface::dequeueNativeBuffer() { // Set the mCurrentBufferInfo to invalid in case of error and only reset it to the correct // value at the end of the function if everything dequeued correctly. @@ -400,6 +408,10 @@ VulkanSurface::NativeBufferInfo* VulkanSurface::dequeueNativeBuffer() { // new NativeBufferInfo storage will be populated lazily as we dequeue each new buffer. mWindowInfo.actualSize = actualSize; releaseBuffers(); + } else { + // A change in transform means we need to repaint the entire buffer area as the damage + // rects have just moved about. + invalidateBuffers(); } if (transformHint != mWindowInfo.transform) { diff --git a/libs/hwui/renderthread/VulkanSurface.h b/libs/hwui/renderthread/VulkanSurface.h index b8ccf7810b5d..ff328b25d195 100644 --- a/libs/hwui/renderthread/VulkanSurface.h +++ b/libs/hwui/renderthread/VulkanSurface.h @@ -113,6 +113,7 @@ private: WindowInfo* outWindowInfo); static bool UpdateWindow(ANativeWindow* window, const WindowInfo& windowInfo); void releaseBuffers(); + void invalidateBuffers(); // TODO: This number comes from ui/BufferQueueDefs. We're not pulling the // header in so that we don't need to depend on libui, but we should share diff --git a/services/tests/servicestests/src/com/android/server/locksettings/recoverablekeystore/RecoverableKeyStoreManagerTest.java b/services/tests/servicestests/src/com/android/server/locksettings/recoverablekeystore/RecoverableKeyStoreManagerTest.java index 035249e32d74..af294f4f0e60 100644 --- a/services/tests/servicestests/src/com/android/server/locksettings/recoverablekeystore/RecoverableKeyStoreManagerTest.java +++ b/services/tests/servicestests/src/com/android/server/locksettings/recoverablekeystore/RecoverableKeyStoreManagerTest.java @@ -344,6 +344,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(mRecoverableKeyStoreDb.getShouldCreateSnapshot(userId, uid)).isFalse(); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_succeedsWithCertFile() throws Exception { int uid = Binder.getCallingUid(); @@ -365,6 +366,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(mRecoverableKeyStoreDb.getRecoveryServicePublicKey(userId, uid)).isNull(); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_updatesShouldCreatesnapshotOnCertUpdate() throws Exception { int uid = Binder.getCallingUid(); @@ -392,6 +394,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(mRecoverableKeyStoreDb.getShouldCreateSnapshot(userId, uid)).isTrue(); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_triesToFilterRootAlias() throws Exception { int uid = Binder.getCallingUid(); @@ -413,6 +416,7 @@ public class RecoverableKeyStoreManagerTest { } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_usesProdCertificateForEmptyRootAlias() throws Exception { int uid = Binder.getCallingUid(); @@ -433,6 +437,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(activeRootAlias).isEqualTo(DEFAULT_ROOT_CERT_ALIAS); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_usesProdCertificateForNullRootAlias() throws Exception { int uid = Binder.getCallingUid(); @@ -453,6 +458,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(activeRootAlias).isEqualTo(DEFAULT_ROOT_CERT_ALIAS); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_regeneratesCounterId() throws Exception { int uid = Binder.getCallingUid(); @@ -483,6 +489,7 @@ public class RecoverableKeyStoreManagerTest { } } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_updatesWithLargerSerial() throws Exception { int uid = Binder.getCallingUid(); @@ -500,6 +507,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(mRecoverableKeyStoreDb.getShouldCreateSnapshot(userId, uid)).isFalse(); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_throwsExceptionOnSmallerSerial() throws Exception { int uid = Binder.getCallingUid(); @@ -565,6 +573,7 @@ public class RecoverableKeyStoreManagerTest { TestData.getInsecureCertPathForEndpoint1()); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryService_ignoresTheSameSerial() throws Exception { int uid = Binder.getCallingUid(); @@ -615,6 +624,7 @@ public class RecoverableKeyStoreManagerTest { } } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryServiceWithSigFile_succeeds() throws Exception { int uid = Binder.getCallingUid(); @@ -630,6 +640,7 @@ public class RecoverableKeyStoreManagerTest { assertThat(mRecoverableKeyStoreDb.getRecoveryServicePublicKey(userId, uid)).isNull(); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void initRecoveryServiceWithSigFile_usesProdCertificateForNullRootAlias() throws Exception { @@ -723,6 +734,7 @@ public class RecoverableKeyStoreManagerTest { eq(Manifest.permission.RECOVER_KEYSTORE), any()); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void startRecoverySessionWithCertPath_storesTheSessionInfo() throws Exception { mRecoverableKeyStoreManager.startRecoverySessionWithCertPath( @@ -740,6 +752,7 @@ public class RecoverableKeyStoreManagerTest { assertEquals(KEY_CLAIMANT_LENGTH_BYTES, entry.getKeyClaimant().length); } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void startRecoverySessionWithCertPath_checksPermissionFirst() throws Exception { mRecoverableKeyStoreManager.startRecoverySessionWithCertPath( @@ -843,6 +856,7 @@ public class RecoverableKeyStoreManagerTest { } } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void startRecoverySessionWithCertPath_throwsIfBadNumberOfSecrets() throws Exception { try { @@ -860,6 +874,7 @@ public class RecoverableKeyStoreManagerTest { } } + @Ignore("Causing breakages so ignoring to resolve, b/281583079") @Test public void startRecoverySessionWithCertPath_throwsIfPublicKeysMismatch() throws Exception { byte[] vaultParams = TEST_VAULT_PARAMS.clone(); |