Fossil SCM
Ensure that the cgi_decode_post_parameters() routine does not delete the raw content used by the /xfer page.
Commit
af3a8dbe09d46a71d55143ea6e21210b4407d9053751df157e70661cd2da65c5
Parent
c116a9996b8bce1…
2 files changed
+1
-1
+1
-1
+1
-1
| --- src/cgi.c | ||
| +++ src/cgi.c | ||
| @@ -1036,12 +1036,12 @@ | ||
| 1036 | 1036 | if( g.zContentType[0]=='a' ){ |
| 1037 | 1037 | add_param_list(z, '&'); |
| 1038 | 1038 | }else{ |
| 1039 | 1039 | process_multipart_form_data(z, len); |
| 1040 | 1040 | } |
| 1041 | + blob_init(&g.cgiIn, 0, 0); | |
| 1041 | 1042 | } |
| 1042 | - blob_init(&g.cgiIn, 0, 0); | |
| 1043 | 1043 | } |
| 1044 | 1044 | |
| 1045 | 1045 | /* |
| 1046 | 1046 | ** This is the comparison function used to sort the aParamQP[] array of |
| 1047 | 1047 | ** query parameters and cookies. |
| 1048 | 1048 |
| --- src/cgi.c | |
| +++ src/cgi.c | |
| @@ -1036,12 +1036,12 @@ | |
| 1036 | if( g.zContentType[0]=='a' ){ |
| 1037 | add_param_list(z, '&'); |
| 1038 | }else{ |
| 1039 | process_multipart_form_data(z, len); |
| 1040 | } |
| 1041 | } |
| 1042 | blob_init(&g.cgiIn, 0, 0); |
| 1043 | } |
| 1044 | |
| 1045 | /* |
| 1046 | ** This is the comparison function used to sort the aParamQP[] array of |
| 1047 | ** query parameters and cookies. |
| 1048 |
| --- src/cgi.c | |
| +++ src/cgi.c | |
| @@ -1036,12 +1036,12 @@ | |
| 1036 | if( g.zContentType[0]=='a' ){ |
| 1037 | add_param_list(z, '&'); |
| 1038 | }else{ |
| 1039 | process_multipart_form_data(z, len); |
| 1040 | } |
| 1041 | blob_init(&g.cgiIn, 0, 0); |
| 1042 | } |
| 1043 | } |
| 1044 | |
| 1045 | /* |
| 1046 | ** This is the comparison function used to sort the aParamQP[] array of |
| 1047 | ** query parameters and cookies. |
| 1048 |
+1
-1
| --- src/xfer.c | ||
| +++ src/xfer.c | ||
| @@ -1120,11 +1120,11 @@ | ||
| 1120 | 1120 | ** of application/x-fossil or application/x-fossil-debug to this page, |
| 1121 | 1121 | ** regardless of what path was specified in the HTTP header. This allows |
| 1122 | 1122 | ** clone clients to specify a URL that omits default pathnames, such |
| 1123 | 1123 | ** as "http://fossil-scm.org/" instead of "http://fossil-scm.org/index.cgi". |
| 1124 | 1124 | ** |
| 1125 | -** WEBPAGE: xfer | |
| 1125 | +** WEBPAGE: xfer raw-content | |
| 1126 | 1126 | ** |
| 1127 | 1127 | ** This is the transfer handler on the server side. The transfer |
| 1128 | 1128 | ** message has been uncompressed and placed in the g.cgiIn blob. |
| 1129 | 1129 | ** Process this message and form an appropriate reply. |
| 1130 | 1130 | */ |
| 1131 | 1131 |
| --- src/xfer.c | |
| +++ src/xfer.c | |
| @@ -1120,11 +1120,11 @@ | |
| 1120 | ** of application/x-fossil or application/x-fossil-debug to this page, |
| 1121 | ** regardless of what path was specified in the HTTP header. This allows |
| 1122 | ** clone clients to specify a URL that omits default pathnames, such |
| 1123 | ** as "http://fossil-scm.org/" instead of "http://fossil-scm.org/index.cgi". |
| 1124 | ** |
| 1125 | ** WEBPAGE: xfer |
| 1126 | ** |
| 1127 | ** This is the transfer handler on the server side. The transfer |
| 1128 | ** message has been uncompressed and placed in the g.cgiIn blob. |
| 1129 | ** Process this message and form an appropriate reply. |
| 1130 | */ |
| 1131 |
| --- src/xfer.c | |
| +++ src/xfer.c | |
| @@ -1120,11 +1120,11 @@ | |
| 1120 | ** of application/x-fossil or application/x-fossil-debug to this page, |
| 1121 | ** regardless of what path was specified in the HTTP header. This allows |
| 1122 | ** clone clients to specify a URL that omits default pathnames, such |
| 1123 | ** as "http://fossil-scm.org/" instead of "http://fossil-scm.org/index.cgi". |
| 1124 | ** |
| 1125 | ** WEBPAGE: xfer raw-content |
| 1126 | ** |
| 1127 | ** This is the transfer handler on the server side. The transfer |
| 1128 | ** message has been uncompressed and placed in the g.cgiIn blob. |
| 1129 | ** Process this message and form an appropriate reply. |
| 1130 | */ |
| 1131 |