Fossil SCM
Fix an off by 1 bug in "win32_http_request()" which was causing POST request to fail on windows. (e.g. wikiedit preview or upload of a file on the chat) Problem appear in checkin [7a3bf55f5489f534]
Commit
e4b49ce37d07f43a64759611bc5c67704a2b6d3dae7481fdb4af8e8d7d0a7438
Parent
a27b3364e3eba10…
1 file changed
+2
-2
+2
-2
| --- src/winhttp.c | ||
| +++ src/winhttp.c | ||
| @@ -363,14 +363,14 @@ | ||
| 363 | 363 | #endif |
| 364 | 364 | } |
| 365 | 365 | while( amt<szHdr ){ |
| 366 | 366 | if( sslConn ){ |
| 367 | 367 | #ifdef FOSSIL_ENABLE_SSL |
| 368 | - got = ssl_read_server(sslConn, &zBuf[amt], szHdr-amt); | |
| 368 | + got = ssl_read_server(sslConn, &zBuf[amt], szHdr-1-amt); | |
| 369 | 369 | #endif |
| 370 | 370 | }else{ |
| 371 | - got = recv(p->s, &zBuf[amt], szHdr-amt, 0); | |
| 371 | + got = recv(p->s, &zBuf[amt], szHdr-1-amt, 0); | |
| 372 | 372 | if( got==SOCKET_ERROR ) goto end_request; |
| 373 | 373 | } |
| 374 | 374 | if( got==0 ){ |
| 375 | 375 | wanted = 0; |
| 376 | 376 | break; |
| 377 | 377 |
| --- src/winhttp.c | |
| +++ src/winhttp.c | |
| @@ -363,14 +363,14 @@ | |
| 363 | #endif |
| 364 | } |
| 365 | while( amt<szHdr ){ |
| 366 | if( sslConn ){ |
| 367 | #ifdef FOSSIL_ENABLE_SSL |
| 368 | got = ssl_read_server(sslConn, &zBuf[amt], szHdr-amt); |
| 369 | #endif |
| 370 | }else{ |
| 371 | got = recv(p->s, &zBuf[amt], szHdr-amt, 0); |
| 372 | if( got==SOCKET_ERROR ) goto end_request; |
| 373 | } |
| 374 | if( got==0 ){ |
| 375 | wanted = 0; |
| 376 | break; |
| 377 |
| --- src/winhttp.c | |
| +++ src/winhttp.c | |
| @@ -363,14 +363,14 @@ | |
| 363 | #endif |
| 364 | } |
| 365 | while( amt<szHdr ){ |
| 366 | if( sslConn ){ |
| 367 | #ifdef FOSSIL_ENABLE_SSL |
| 368 | got = ssl_read_server(sslConn, &zBuf[amt], szHdr-1-amt); |
| 369 | #endif |
| 370 | }else{ |
| 371 | got = recv(p->s, &zBuf[amt], szHdr-1-amt, 0); |
| 372 | if( got==SOCKET_ERROR ) goto end_request; |
| 373 | } |
| 374 | if( got==0 ){ |
| 375 | wanted = 0; |
| 376 | break; |
| 377 |