Fossil SCM

Fix a bug in the xfer server that prevents it from receiving deltas.

drh 2007-08-09 03:44 trunk
Commit 869534e1823475cfa195479e72cdd3753f9a9b59
1 file changed +4 -1
+4 -1
--- src/xfer.c
+++ src/xfer.c
@@ -188,10 +188,13 @@
188188
blob_append(pOut, blob_buffer(&delta), size);
189189
}else{
190190
cgi_printf("file %b %b %d\n", &uuid, &srcuuid, size);
191191
cgi_append_content(blob_buffer(&delta), size);
192192
}
193
+ blob_reset(&delta);
194
+ blob_reset(&srcuuid);
195
+ blob_reset(&uuid);
193196
}else{
194197
size = blob_size(&content);
195198
if( pOut ){
196199
blob_appendf(pOut, "file %b %d\n", &uuid, size);
197200
blob_append(pOut, blob_buffer(&content), size);
@@ -339,11 +342,11 @@
339342
/* file UUID SIZE \n CONTENT
340343
** file UUID DELTASRC SIZE \n CONTENT
341344
**
342345
** Accept a file from the client.
343346
*/
344
- if( blob_eq(&aToken[0], "file") && nToken>=2 && nToken<=3 ){
347
+ if( blob_eq(&aToken[0], "file") && nToken>=3 && nToken<=4 ){
345348
if( !isPush ){
346349
cgi_reset_content();
347350
@ error not\sauthorized\sto\swrite
348351
nErr++;
349352
break;
350353
--- src/xfer.c
+++ src/xfer.c
@@ -188,10 +188,13 @@
188 blob_append(pOut, blob_buffer(&delta), size);
189 }else{
190 cgi_printf("file %b %b %d\n", &uuid, &srcuuid, size);
191 cgi_append_content(blob_buffer(&delta), size);
192 }
 
 
 
193 }else{
194 size = blob_size(&content);
195 if( pOut ){
196 blob_appendf(pOut, "file %b %d\n", &uuid, size);
197 blob_append(pOut, blob_buffer(&content), size);
@@ -339,11 +342,11 @@
339 /* file UUID SIZE \n CONTENT
340 ** file UUID DELTASRC SIZE \n CONTENT
341 **
342 ** Accept a file from the client.
343 */
344 if( blob_eq(&aToken[0], "file") && nToken>=2 && nToken<=3 ){
345 if( !isPush ){
346 cgi_reset_content();
347 @ error not\sauthorized\sto\swrite
348 nErr++;
349 break;
350
--- src/xfer.c
+++ src/xfer.c
@@ -188,10 +188,13 @@
188 blob_append(pOut, blob_buffer(&delta), size);
189 }else{
190 cgi_printf("file %b %b %d\n", &uuid, &srcuuid, size);
191 cgi_append_content(blob_buffer(&delta), size);
192 }
193 blob_reset(&delta);
194 blob_reset(&srcuuid);
195 blob_reset(&uuid);
196 }else{
197 size = blob_size(&content);
198 if( pOut ){
199 blob_appendf(pOut, "file %b %d\n", &uuid, size);
200 blob_append(pOut, blob_buffer(&content), size);
@@ -339,11 +342,11 @@
342 /* file UUID SIZE \n CONTENT
343 ** file UUID DELTASRC SIZE \n CONTENT
344 **
345 ** Accept a file from the client.
346 */
347 if( blob_eq(&aToken[0], "file") && nToken>=3 && nToken<=4 ){
348 if( !isPush ){
349 cgi_reset_content();
350 @ error not\sauthorized\sto\swrite
351 nErr++;
352 break;
353

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button