Skip to content

Commit 8c5405d

Browse files
authored
fix cycle in list ifd, fix #161 (#162)
1 parent 2e95262 commit 8c5405d

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

exifread/classes.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,12 @@ def list_ifd(self) -> list:
132132
"""Return the list of IFDs in the header."""
133133
i = self._first_ifd()
134134
ifds = []
135+
set_ifds = set()
135136
while i:
137+
if i in set_ifds:
138+
logger.warning('IFD loop detected.')
139+
break
140+
set_ifds.add(i)
136141
ifds.append(i)
137142
i = self._next_ifd(i)
138143
return ifds

0 commit comments

Comments
 (0)