libidav/resource.c

changeset 222
7b73058d782e
parent 208
1fb26aca5093
child 223
cbbdf207e67e
equal deleted inserted replaced
221:e22c29b7ee2f 222:7b73058d782e
951 951
952 //printf("\nlock\n"); 952 //printf("\nlock\n");
953 //printf("%.*s\n\n", request->size, request->space); 953 //printf("%.*s\n\n", request->size, request->space);
954 //printf("%.*s\n\n", response->size, response->space); 954 //printf("%.*s\n\n", response->size, response->space);
955 955
956 ucx_buffer_free(request);
957
956 long status = 0; 958 long status = 0;
957 curl_easy_getinfo (handle, CURLINFO_RESPONSE_CODE, &status); 959 curl_easy_getinfo (handle, CURLINFO_RESPONSE_CODE, &status);
958 if(ret == CURLE_OK && (status >= 200 && status < 300)) { 960 if(ret == CURLE_OK && (status >= 200 && status < 300)) {
959 LockDiscovery lock; 961 LockDiscovery lock;
960 if(parse_lock_response(sn, response, &lock)) { 962 if(parse_lock_response(sn, response, &lock)) {
961 sn->error = DAV_ERROR; 963 sn->error = DAV_ERROR;
964 ucx_buffer_free(response);
962 return -1; 965 return -1;
963 } 966 }
967 ucx_buffer_free(response);
964 968
965 DavLock *l = dav_create_lock(sn, lock.locktoken, lock.timeout); 969 DavLock *l = dav_create_lock(sn, lock.locktoken, lock.timeout);
966 free(lock.locktoken); 970 free(lock.locktoken);
967 free(lock.timeout); 971 free(lock.timeout);
968 972
981 dav_destroy_lock(sn, l); 985 dav_destroy_lock(sn, l);
982 return -1; 986 return -1;
983 } 987 }
984 } else { 988 } else {
985 dav_session_set_error(sn, ret, status); 989 dav_session_set_error(sn, ret, status);
990 ucx_buffer_free(response);
986 return -1; 991 return -1;
987 } 992 }
988 } 993 }
989 994
990 int dav_unlock(DavResource *res) { 995 int dav_unlock(DavResource *res) {

mercurial