From 5568e4873ee3adb6258f0e2d391ab48178e31141 Mon Sep 17 00:00:00 2001 From: Markus Unterwaditzer Date: Thu, 5 Jan 2017 18:50:38 +0100 Subject: [PATCH] Fix more bugs re #523 --- vdirsyncer/storage/dav.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/vdirsyncer/storage/dav.py b/vdirsyncer/storage/dav.py index 905c8d0..6e5daf5 100644 --- a/vdirsyncer/storage/dav.py +++ b/vdirsyncer/storage/dav.py @@ -86,7 +86,7 @@ def _parse_xml(content): def _merge_xml(items): if not items: - return [] + return None rv = items[0] for item in items[1:]: rv.extend(item.getiterator()) @@ -210,7 +210,12 @@ class Discover(object): done = set() for response in root.findall('{DAV:}response'): props = _merge_xml(response.findall('{DAV:}propstat/{DAV:}prop')) + if not props: + logger.debug('Skipping, missing : %s', response) + continue if props.find('{DAV:}resourcetype/' + self._resourcetype) is None: + logger.debug('Skipping, not of resource type %s: %s', + self._resourcetype, response) continue href = response.find('{DAV:}href')