diff --git a/util.cpp b/util.cpp
index 4b234f8..c4e989a 100644
--- a/util.cpp
+++ b/util.cpp
@@ -240,7 +240,6 @@
 IntfAddrMap getInterfaceAddrs()
 {
     IntfAddrMap intfMap {};
-    AddrList addrList {};
     struct ifaddrs* ifaddr = nullptr;
 
     // attempt to fill struct with ifaddrs
@@ -275,14 +274,6 @@
             {
                 continue;
             }
-            // if the interface name is  not same as the  previous
-            // iteration then add the addr list into
-            // the map.
-            if (intfName != "" && intfName != std::string(ifa->ifa_name))
-            {
-                intfMap.emplace(intfName, addrList);
-                addrList.clear();
-            }
             intfName = ifa->ifa_name;
             AddrInfo info {};
             char ip[INET6_ADDRSTRLEN] = { 0 };
@@ -319,10 +310,9 @@
             info.addrType = ifa->ifa_addr->sa_family;
             info.ipaddress = ip;
             info.prefix = toCidr(info.addrType, std::string(subnetMask));
-            addrList.emplace_back(info);
+            intfMap[intfName].push_back(info);
         }
     }
-    intfMap.emplace(intfName, addrList);
     return intfMap;
 }
 
