diff --git a/ryu/lib/packet/icmp.py b/ryu/lib/packet/icmp.py
index 1a6cd76f..ce21aee9 100644
--- a/ryu/lib/packet/icmp.py
+++ b/ryu/lib/packet/icmp.py
@@ -119,7 +119,7 @@ class icmp(packet_base.PacketBase):
         return hdr
 
     def __len__(self):
-        return self._MIN_LEN + len(self.data)
+        return self._MIN_LEN + (len(self.data) if self.data else 0)
 
 
 @icmp.register_icmp_type(ICMP_ECHO_REPLY, ICMP_ECHO_REQUEST)
