From 897b413c2d62fe115f4526a8755f54283740e14d Mon Sep 17 00:00:00 2001 From: Andi Gutmans Date: Mon, 10 Apr 2000 17:39:11 +0000 Subject: [PATCH] - Try and resolve the problem with current working directories not being set to the script directory --- main/main.c | 6 +++++- main/php_virtual_cwd.c | 7 +++++++ main/php_virtual_cwd.h | 1 + 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/main/main.c b/main/main.c index 06d208ec61..0c50d60d54 100644 --- a/main/main.c +++ b/main/main.c @@ -619,7 +619,11 @@ int php_request_startup(CLS_D ELS_DC PLS_DC SLS_DC) PG(connection_status) = PHP_CONNECTION_NORMAL; zend_activate(CLS_C ELS_CC); - sapi_activate(SLS_C); + sapi_activate(SLS_C); + +#ifdef VIRTUAL_DIR + virtual_cwd_activate(SG(request_info).path_translated); +#endif php_set_timeout(PG(max_execution_time)); diff --git a/main/php_virtual_cwd.c b/main/php_virtual_cwd.c index 8dd87dc57e..e773fde9ee 100644 --- a/main/php_virtual_cwd.c +++ b/main/php_virtual_cwd.c @@ -145,6 +145,13 @@ CWD_API void virtual_cwd_startup() ZEND_INIT_MODULE_GLOBALS(cwd, cwd_globals_ctor, cwd_globals_dtor); } +CWD_API void virtual_cwd_activate(char *filename) +{ + if (filename) { + virtual_chdir_file(filename); + } +} + CWD_API void virtual_cwd_shutdown() { #ifndef ZTS diff --git a/main/php_virtual_cwd.h b/main/php_virtual_cwd.h index 252bd74b64..ab46974d71 100644 --- a/main/php_virtual_cwd.h +++ b/main/php_virtual_cwd.h @@ -27,6 +27,7 @@ typedef int (*verify_path_func)(const cwd_state *); CWD_API void virtual_cwd_startup(); CWD_API void virtual_cwd_shutdown(); +CWD_API void virtual_cwd_activate(char *filename); CWD_API char *virtual_getcwd_ex(int *length); CWD_API char *virtual_getcwd(char *buf, size_t size); CWD_API int virtual_chdir(char *path); -- 2.50.1