diff -r 1fd94945796e -r 4d39adda7a38 src/server/webdav/saxhandler.cpp --- a/src/server/webdav/saxhandler.cpp Sat Jan 19 20:51:16 2013 +0100 +++ b/src/server/webdav/saxhandler.cpp Sat Jan 19 21:52:21 2013 +0100 @@ -75,9 +75,11 @@ char *ns = XMLString::transcode(uri); char *name = XMLString::transcode(localname); - if(!strcmp(ns, "DAV:") && !strcmp(name, "prop")) { + if(!strcmp(ns, "DAV:") && !strcmp(name, "allprop")) { + davrq->allprop = 1; + } else if(!strcmp(ns, "DAV:") && !strcmp(name, "prop")) { davPropTag = true; - } else if(davPropTag && property == NULL) { + } else if(davPropTag && property == NULL && !davrq->allprop) { property = (DavProperty*)pool_malloc(pool, sizeof(DavProperty)); //property = (DavProperty*)malloc(sizeof(DavProperty)); /* TODO: pool_malloc makes big mistakes!! */