[automerge] Support vendor GNSS file properties for AAOS virtualization 2p: 9447139c92

Original change: https://googleplex-android-review.googlesource.com/c/platform/hardware/interfaces/+/16989257

Bug: 213489959
Change-Id: I1879b5176020c8dbba93b423462932f3cdf1c388
diff --git a/gnss/common/utils/default/GnssReplayUtils.cpp b/gnss/common/utils/default/GnssReplayUtils.cpp
index b27943e..d6769bd 100644
--- a/gnss/common/utils/default/GnssReplayUtils.cpp
+++ b/gnss/common/utils/default/GnssReplayUtils.cpp
@@ -16,24 +16,42 @@
 
 #include "GnssReplayUtils.h"
 
+#include <array>
+
 namespace android {
 namespace hardware {
 namespace gnss {
 namespace common {
 
 std::string ReplayUtils::getGnssPath() {
-    char devname_value[PROPERTY_VALUE_MAX] = "";
-    if (property_get("debug.location.gnss.devname", devname_value, NULL) > 0) {
-        return devname_value;
+    std::array<char, PROPERTY_VALUE_MAX> devname_value;
+
+    devname_value.fill(0);
+    if (property_get("debug.location.gnss.devname", devname_value.begin(), NULL) > 0) {
+        return devname_value.begin();
     }
+
+    devname_value.fill(0);
+    if (property_get("vendor.ser.gnss-uart", devname_value.begin(), NULL) > 0) {
+        return devname_value.begin();
+    }
+
     return GNSS_PATH;
 }
 
 std::string ReplayUtils::getFixedLocationPath() {
-    char devname_value[PROPERTY_VALUE_MAX] = "";
-    if (property_get("debug.location.fixedlocation.devname", devname_value, NULL) > 0) {
-        return devname_value;
+    std::array<char, PROPERTY_VALUE_MAX> devname_value;
+
+    devname_value.fill(0);
+    if (property_get("debug.location.fixedlocation.devname", devname_value.begin(), NULL) > 0) {
+        return devname_value.begin();
     }
+
+    devname_value.fill(0);
+    if (property_get("vendor.ser.gnss-uart", devname_value.begin(), NULL) > 0) {
+        return devname_value.begin();
+    }
+
     return FIXED_LOCATION_PATH;
 }