On Fri, 22 Nov 2002, Sascha Schumann wrote:
> > This *is* cleaner approach, but if we wanted to keep as close to pre-4.3
> > behaviour as possible I thing that "HTTP/1.0 %d Code\r\n" should be
> > replaced with SG(sapi_headers).http_status_line.
>
> Well, if the user enables rfc2616_header, we should surely
> generate a RFC 2616 header, don't you think?
Yes. SG(sapi_headers).http_status_line will always contain a RFC 2616
header for non-200 status codes. Please have a look at the attached
revision of your previous patch.
Edin
Index: cgi_main.c
===================================================================
RCS file: /repository/php4/sapi/cgi/cgi_main.c,v
retrieving revision 1.190.2.3
diff -u -3 -p -r1.190.2.3 cgi_main.c
--- cgi_main.c 22 Nov 2002 10:16:36 -0000 1.190.2.3
+++ cgi_main.c 22 Nov 2002 12:00:42 -0000
@@ -238,7 +238,6 @@ static void sapi_cgibin_flush(void *serv
static int sapi_cgi_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC)
{
char buf[1024];
- int len;
sapi_header_struct *h;
zend_llist_position pos;
long rfc2616_headers = 0;
@@ -252,13 +251,17 @@ static int sapi_cgi_send_headers(sapi_he
rfc2616_headers = 0;
}
- if (rfc2616_headers && SG(sapi_headers).http_status_line) {
- len = sprintf(buf, "%s\r\n", SG(sapi_headers).http_status_line);
- } else {
- len = sprintf(buf, "Status: %d\r\n",
SG(sapi_headers).http_response_code);
- }
+ if (SG(sapi_headers).http_response_code != 200) {
+ int len;
+
+ if (rfc2616_headers) {
+ len = sprintf(buf, "%s\r\n",
+SG(sapi_headers).http_status_line);
+ } else {
+ len = sprintf(buf, "Status: %d\r\n",
+SG(sapi_headers).http_response_code);
+ }
- PHPWRITE_H(buf, len);
+ PHPWRITE_H(buf, len);
+ }
if (SG(sapi_headers).send_default_content_type) {
char *hd;
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php