Skip to content

Commit 25fa930

Browse files
authored
Fix: Bug introduced in #1373 list has not attr tag (#1396)
* regression test for Taxel/PlexTraktSync#1901 * bugfix Taxel/PlexTraktSync#1901
1 parent 0108c95 commit 25fa930

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

plexapi/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -347,7 +347,7 @@ def findItems(self, data, cls=None, initpath=None, rtag=None, **kwargs):
347347
kwargs['type'] = cls.TYPE
348348
# rtag to iter on a specific root tag using breadth-first search
349349
if rtag:
350-
data = next(utils.iterXMLBFS(data, rtag), [])
350+
data = next(utils.iterXMLBFS(data, rtag), Element('Empty'))
351351
# loop through all data elements to find matches
352352
items = MediaContainer[cls](self._server, data, initpath=initpath) if data.tag == 'MediaContainer' else []
353353
for elem in data:

tests/test_fetch_items.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
from xml.etree.ElementTree import Element
2+
13
from plexapi.audio import Track
24
from plexapi.base import MediaContainer
35

@@ -30,3 +32,10 @@ def test_fetch_items_with_media_container(show):
3032
assert some_episodes.size == 2
3133
assert some_episodes.offset == 0
3234
assert some_episodes.totalSize == len(all_episodes)
35+
36+
37+
def test_find_items_empty_data(plex):
38+
result = plex.findItems(Element(""), rtag="foo")
39+
assert len(result) == 0
40+
result = plex.findItems(Element("MediaContainer"))
41+
assert isinstance(result, MediaContainer)

0 commit comments

Comments
 (0)