Fix for MDL-8653:
When updating languages through a proxy, skip to the end of the HTTP headers
as defined by RFC 1945 instead of skipping exactly 12 lines of chaff.
Credit for patch 100% to Dan Poltawski.
return false; //failed
}
fputs($proxy_fp, "GET $url HTTP/1.0\r\nHost: $CFG->proxyhost\r\n\r\n");
- $i = 0;
- while(!feof($proxy_fp)) {
+
+ $headers_done = false;
+ while(!feof($proxy_fp)) {
$string = fgets($proxy_fp, 1024);
- if ($i > 11) { //12 lines of info skipped
+ if(!$headers_done){
+ // A new line indicates end of HTTP headers
+ $headers_done = ("\r\n" == $string);
+ } else {
$availablelangs[] = split(',', $string);
}
- $i++;
}
fclose($proxy_fp);