diff --git a/common/util/src/com/android/compatibility/common/util/ResultHandler.java b/common/util/src/com/android/compatibility/common/util/ResultHandler.java
index 5b4bf22..5b14a50 100644
--- a/common/util/src/com/android/compatibility/common/util/ResultHandler.java
+++ b/common/util/src/com/android/compatibility/common/util/ResultHandler.java
@@ -270,7 +270,9 @@
                         // If the fingerprint was altered, then checksum against the fingerprint
                         // originally reported
                         Boolean checksumMismatch = invocationUseChecksum &&
-                             !checksumReporter.containsTestResult(test, module, reportFingerprint);
+                             !checksumReporter.containsTestResult(test, module, reportFingerprint)
+                             && (fingerprintWasAltered ? !checksumReporter.containsTestResult(
+                                 test, module, unalteredFingerprint) : true);
                         if (checksumMismatch) {
                             test.removeResult();
                         }
@@ -281,7 +283,9 @@
                 // If the fingerprint was altered, then checksum against the fingerprint
                 // originally reported
                 Boolean checksumMismatch = invocationUseChecksum &&
-                     !checksumReporter.containsModuleResult(module, reportFingerprint);
+                     !checksumReporter.containsModuleResult(module, reportFingerprint) &&
+                     (fingerprintWasAltered ? !checksumReporter.containsModuleResult(
+                         module, unalteredFingerprint) : true);
                 if (checksumMismatch) {
                     module.initializeDone(false);
                 }
