X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/c6b553f635c7cbb4f21d41a6fa82e204447c16cf..2a913bfbeb13fc93ad0ec942d359dbcaa3ad3c1e:/src/eu/alefzero/webdav/WebdavEntry.java diff --git a/src/eu/alefzero/webdav/WebdavEntry.java b/src/eu/alefzero/webdav/WebdavEntry.java index 84c96fbd..5785f914 100644 --- a/src/eu/alefzero/webdav/WebdavEntry.java +++ b/src/eu/alefzero/webdav/WebdavEntry.java @@ -50,6 +50,8 @@ public class WebdavEntry { mName = tmp[tmp.length - 1]; } + // use unknown mimetype as default behavior + mContentType = "application/octet-stream"; prop = propSet.get(DavPropertyName.GETCONTENTTYPE); if (prop != null) { mContentType = (String) prop.getValue(); @@ -57,13 +59,15 @@ public class WebdavEntry { if (mContentType.indexOf(";") >= 0) { mContentType = mContentType.substring(0, mContentType.indexOf(";")); } - } else { - mContentType = "DIR"; - /* - * prop = propSet.get(DavPropertyName.ISCOLLECTION); if (prop != - * null && Boolean.parseBoolean((String) prop.getValue())) - * mContentType = "DIR"; - */ + } + + // check if it's a folder in the standard way: see RFC2518 12.2 , or RFC4918 14.3 + prop = propSet.get(DavPropertyName.RESOURCETYPE); + if (prop!= null) { + Object value = prop.getValue(); + if (value != null) { + mContentType = "DIR"; // a specific attribute would be better, but this is enough; unless while we have no reason to distinguish MIME types for folders + } } prop = propSet.get(DavPropertyName.GETCONTENTLENGTH);