Do not allow duplicated manifest.vendor-ndk.version.

As specified by VINTF doc in P, the following is not allowed:

<manifest...>
<vendor-ndk><version>27</version></vendor-ndk>
<vendor-ndk><version>27</version></vendor-ndk>
</manifest>

Test: libvintf_test
Change-Id: Ib9d42d2d75b7362c268597bc947c214e03dd5d00
Fixes: 72461606
diff --git a/parse_xml.cpp b/parse_xml.cpp
index 9f53d72..7abbc55 100644
--- a/parse_xml.cpp
+++ b/parse_xml.cpp
@@ -866,6 +866,16 @@
                 return false;
             }
 
+            std::set<std::string> vendorNdkVersions;
+            for (const auto& vendorNdk : object->framework.mVendorNdks) {
+                if (vendorNdkVersions.find(vendorNdk.version()) != vendorNdkVersions.end()) {
+                    this->mLastError =
+                        "Duplicated manifest.vendor-ndk.version " + vendorNdk.version();
+                    return false;
+                }
+                vendorNdkVersions.insert(vendorNdk.version());
+            }
+
             if (!parseOptionalChild(root, systemSdkConverter, {}, &object->framework.mSystemSdk)) {
                 return false;
             }