summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRasmus Lerdorf <rasmus@php.net>2000-10-14 05:06:16 +0000
committerRasmus Lerdorf <rasmus@php.net>2000-10-14 05:06:16 +0000
commitc3026223f72191d801f12e02d523aafe8de94eb1 (patch)
tree58dfe2060c5afd711ac0b480b62bb92339d5ba5a
parentbeb42300e1bad2efcf9573a6adabfb2526cec11d (diff)
downloadphp-git-c3026223f72191d801f12e02d523aafe8de94eb1.tar.gz
This appears to be the correct fix to me.
@ Fix memory leak in x-httpd-source mode (Jason Greene)
-rw-r--r--sapi/apache/sapi_apache.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/sapi/apache/sapi_apache.c b/sapi/apache/sapi_apache.c
index 376c69f7fa..161523bad2 100644
--- a/sapi/apache/sapi_apache.c
+++ b/sapi/apache/sapi_apache.c
@@ -69,23 +69,23 @@ int apache_php_module_main(request_rec *r, int display_source_mode CLS_DC ELS_DC
/* sending a file handle to another dll is not working
// so let zend open it.
*/
- file_handle.type = ZEND_HANDLE_FILENAME;
- file_handle.handle.fd = 0;
- file_handle.filename = SG(request_info).path_translated;
- file_handle.opened_path = NULL;
- file_handle.free_filename = 0;
-
+
if (display_source_mode) {
zend_syntax_highlighter_ini syntax_highlighter_ini;
- if (open_file_for_scanning(&file_handle CLS_CC)==SUCCESS) {
- php_get_highlight_struct(&syntax_highlighter_ini);
- zend_highlight(&syntax_highlighter_ini);
+ php_get_highlight_struct(&syntax_highlighter_ini);
+ if (highlight_file(SG(request_info).path_translated,&syntax_highlighter_ini)){
return OK;
} else {
return NOT_FOUND;
}
} else {
+ file_handle.type = ZEND_HANDLE_FILENAME;
+ file_handle.handle.fd = 0;
+ file_handle.filename = SG(request_info).path_translated;
+ file_handle.opened_path = NULL;
+ file_handle.free_filename = 0;
+
(void) php_execute_script(&file_handle CLS_CC ELS_CC PLS_CC);
}