dav/methods.c

changeset 17
11dffb40cd91
parent 16
5dbef9e07376
child 23
2b0a7361f15c
equal deleted inserted replaced
16:5dbef9e07376 17:11dffb40cd91
148 ucx_buffer_write(s.ptr, 1, s.length, buf); 148 ucx_buffer_write(s.ptr, 1, s.length, buf);
149 149
150 return buf; 150 return buf;
151 } 151 }
152 152
153 DavResource* parse_propfind_response(DavSession *sn, UcxBuffer *response) { 153 DavResource* parse_propfind_response(DavSession *sn, DavResource *root, UcxBuffer *response) {
154 char *url = NULL; 154 char *url = NULL;
155 curl_easy_getinfo(sn->handle, CURLINFO_EFFECTIVE_URL, &url); 155 curl_easy_getinfo(sn->handle, CURLINFO_EFFECTIVE_URL, &url);
156 DavResource *root = resource_new_href(sn, util_url_path(url)); 156 if(!root) {
157 root = resource_new_href(sn, util_url_path(url));
158 }
157 159
158 xmlDoc *doc = xmlReadMemory(response->space, response->size, url, NULL, 0); 160 xmlDoc *doc = xmlReadMemory(response->space, response->size, url, NULL, 0);
159 if(!doc) { 161 if(!doc) {
160 // TODO: free stuff 162 // TODO: free stuff
161 sn->error = DAV_ERROR; 163 sn->error = DAV_ERROR;

mercurial