projects
/
m6w6
/
ext-http
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
|
github
raw
|
patch
| inline |
side by side
(parent:
9ba6866
)
- override INI(http.force_exit) when calling http_exit() in ob_etaghandler
author
Michael Wallner
<mike@php.net>
Mon, 27 Mar 2006 09:28:03 +0000
(09:28 +0000)
committer
Michael Wallner
<mike@php.net>
Mon, 27 Mar 2006 09:28:03 +0000
(09:28 +0000)
- check if ob is locked in http_exit()
http_api.c
patch
|
blob
|
history
http_cache_api.c
patch
|
blob
|
history
diff --git
a/http_api.c
b/http_api.c
index 774e60335a1c70d7bb537bc6a6de88cacb8376e8..59466806a03e80b2bd0fd46aac0856ea9657e08f 100644
(file)
--- a/
http_api.c
+++ b/
http_api.c
@@
-147,7
+147,9
@@
STATUS _http_exit_ex(int status, char *header, char *body, zend_bool send_header
return FAILURE;
}
- php_end_ob_buffers(0 TSRMLS_CC);
+ if (!OG(ob_lock)) {
+ php_end_ob_buffers(0 TSRMLS_CC);
+ }
if ((SUCCESS == sapi_send_headers(TSRMLS_C)) && body) {
PHPWRITE(body, strlen(body));
}
diff --git
a/http_cache_api.c
b/http_cache_api.c
index 582c3ccd455d764b26fcec0134ec58dff88080ea..832656466972a38be1a69ead9a98e14f798b4fb9 100644
(file)
--- a/
http_cache_api.c
+++ b/
http_cache_api.c
@@
-230,6
+230,8
@@
void _http_ob_etaghandler(char *output, uint output_len,
http_send_etag_ex(etag, strlen(etag), &sent_header);
if (http_match_etag("HTTP_IF_NONE_MATCH", etag)) {
+ /* force exit; ob within ob does not work */
+ HTTP_G->force_exit = 1;
http_exit_ex(304, sent_header, etag, 0);
}