CompatibilityMatrix::combine also allow downrev of minor version.

If level=1 states foo@1.2-3 and level=2 states foo@1.0-4, then
combine() should return a matrix with foo@1.0-4. This relaxes the
minor version requirement on upgrading devices.

Test: libvintf_test
Bug: 74341777
Change-Id: Ia9bd3f7ce4ab39745acaabbe1ed111b490a379cf
diff --git a/MatrixHal.cpp b/MatrixHal.cpp
index d716a8d..504265e 100644
--- a/MatrixHal.cpp
+++ b/MatrixHal.cpp
@@ -144,6 +144,7 @@
         if (existingVr == this->versionRanges.end()) {
             this->versionRanges.push_back(otherVr);
         } else {
+            existingVr->minMinor = std::min(existingVr->minMinor, otherVr.minMinor);
             existingVr->maxMinor = std::max(existingVr->maxMinor, otherVr.maxMinor);
         }
     }