diff --git a/src/profiling/common/unwind_support.cc b/src/profiling/common/unwind_support.cc
index dee50de..4a1937d 100644
--- a/src/profiling/common/unwind_support.cc
+++ b/src/profiling/common/unwind_support.cc
@@ -69,15 +69,16 @@
   unwindstack::MapInfo* prev_map = nullptr;
   unwindstack::MapInfo* prev_real_map = nullptr;
   return android::procinfo::ReadMapFileContent(
-      &content[0], [&](uint64_t start, uint64_t end, uint16_t flags,
-                       uint64_t pgoff, ino_t, const char* name) {
+      &content[0], [&](const android::procinfo::MapInfo& mapinfo) {
         // Mark a device map in /dev/ and not in /dev/ashmem/ specially.
-        if (strncmp(name, "/dev/", 5) == 0 &&
-            strncmp(name + 5, "ashmem/", 7) != 0) {
+        auto flags = mapinfo.flags;
+        if (strncmp(mapinfo.name.c_str(), "/dev/", 5) == 0 &&
+            strncmp(mapinfo.name.c_str() + 5, "ashmem/", 7) != 0) {
           flags |= unwindstack::MAPS_FLAGS_DEVICE_MAP;
         }
         maps_.emplace_back(new unwindstack::MapInfo(
-            prev_map, prev_real_map, start, end, pgoff, flags, name));
+            prev_map, prev_real_map, mapinfo.start, mapinfo.end, mapinfo.pgoff,
+            flags, mapinfo.name));
         prev_map = maps_.back().get();
         if (!prev_map->IsBlank()) {
           prev_real_map = prev_map;
