Essentialy the same thing is done in zend engine with zend_error_cb, and this is nothing fancy, but the one thing I can think of might be the 3rd line I added in php_variables.c. Maybe this needs to happen within one of the startup functions instead. If you can try that, that would be cool, I do not have access to a linux platform at home to try with. Shane
Yasuo Ohgaki wrote: > I get segfault with this patch during "make install"... > > # It seems failed to send previous mail... > # Sorry, if you get 2 mails > > -- > Yasuo Ohgaki > > > Shane Caraveo wrote: > >>shane Sun Oct 13 04:38:09 2002 EDT >> >> Modified files: >> /php4/main php_variables.c php_variables.h >> Log: >> make php_import_environment_variables overwritable so fastcgi can correctly >> set $_ENV. >> >> >> >>Index: php4/main/php_variables.c >>diff -u php4/main/php_variables.c:1.44 php4/main/php_variables.c:1.45 >>--- php4/main/php_variables.c:1.44 Sat Sep 7 20:27:05 2002 >>+++ php4/main/php_variables.c Sun Oct 13 04:38:09 2002 >>@@ -16,7 +16,7 @@ >> | Zeev Suraski <[EMAIL PROTECTED]> | >> +----------------------------------------------------------------------+ >> */ >>-/* $Id: php_variables.c,v 1.44 2002/09/08 00:27:05 yohgaki Exp $ */ >>+/* $Id: php_variables.c,v 1.45 2002/10/13 08:38:09 shane Exp $ */ >> >> #include <stdio.h> >> #include "php.h" >>@@ -28,6 +28,9 @@ >> >> #include "zend_globals.h" >> >>+/* for systems that need to override reading of environment variables */ >>+void _php_import_environment_variables(zval *array_ptr TSRMLS_DC); >>+PHPAPI void (*php_import_environment_variables)(zval *array_ptr TSRMLS_DC) = >_php_import_environment_variables; >> >> PHPAPI void php_register_variable(char *var, char *strval, zval *track_vars_array >TSRMLS_DC) >> { >>@@ -318,8 +321,7 @@ >> } >> } >> >>- >>-void php_import_environment_variables(zval *array_ptr TSRMLS_DC) >>+void _php_import_environment_variables(zval *array_ptr TSRMLS_DC) >> { >> char **env, *p, *t; >> >>Index: php4/main/php_variables.h >>diff -u php4/main/php_variables.h:1.13 php4/main/php_variables.h:1.14 >>--- php4/main/php_variables.h:1.13 Tue Dec 11 10:31:05 2001 >>+++ php4/main/php_variables.h Sun Oct 13 04:38:09 2002 >>@@ -17,7 +17,7 @@ >> +----------------------------------------------------------------------+ >> */ >> >>-/* $Id: php_variables.h,v 1.13 2001/12/11 15:31:05 sebastian Exp $ */ >>+/* $Id: php_variables.h,v 1.14 2002/10/13 08:38:09 shane Exp $ */ >> >> #ifndef PHP_VARIABLES_H >> #define PHP_VARIABLES_H >>@@ -31,7 +31,7 @@ >> #define PARSE_STRING 3 >> >> void php_treat_data(int arg, char *str, zval* destArray TSRMLS_DC); >>-PHPAPI void php_import_environment_variables(zval *array_ptr TSRMLS_DC); >>+extern PHPAPI void (*php_import_environment_variables)(zval *array_ptr TSRMLS_DC); >> PHPAPI void php_register_variable(char *var, char *val, pval *track_vars_array >TSRMLS_DC); >> /* binary-safe version */ >> PHPAPI void php_register_variable_safe(char *var, char *val, int val_len, pval >*track_vars_array TSRMLS_DC); >> >> > > > > -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php