summaryrefslogtreecommitdiff
path: root/Remote/WebDAV.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2016-02-09 11:47:35 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2016-02-09 11:47:35 -0400
commit407ea00ce11c145b73a4be6bd4e1354931b4d500 (patch)
tree99519e7a99ceca880de1a8266e7bea2f6e4b7724 /Remote/WebDAV.hs
parent726684a65cc08ab356a53e4157ef28c36ab9a25b (diff)
WebDAV: Set depth 1 in PROPFIND request, for better compatability with some servers. Thanks, wzhd.
Diffstat (limited to 'Remote/WebDAV.hs')
-rw-r--r--Remote/WebDAV.hs5
1 files changed, 4 insertions, 1 deletions
diff --git a/Remote/WebDAV.hs b/Remote/WebDAV.hs
index 35af290ad..87df16e93 100644
--- a/Remote/WebDAV.hs
+++ b/Remote/WebDAV.hs
@@ -260,7 +260,10 @@ existsDAV :: DavLocation -> DAVT IO (Either String Bool)
existsDAV l = inLocation l check `catchNonAsync` (\e -> return (Left $ show e))
where
check = do
- setDepth Nothing
+ -- Some DAV services only support depth of 1, and
+ -- more depth is certainly not needed to check if a
+ -- location exists.
+ setDepth (Just Depth1)
catchJust
(matchStatusCodeException (== notFound404))
(getPropsM >> ispresent True)