mirror of
https://github.com/php/php-src.git
synced 2024-11-25 19:05:31 +08:00
- Use IS_ABSOLUTE_PATH() so that this will work correctly under Windows
This commit is contained in:
parent
962c163cdf
commit
0e874a094c
@ -390,6 +390,7 @@ PHPAPI FILE *php_fopen_with_path(char *filename, char *mode, char *path, char **
|
||||
char trypath[MAXPATHLEN + 1];
|
||||
struct stat sb;
|
||||
FILE *fp;
|
||||
int filename_length;
|
||||
PLS_FETCH();
|
||||
|
||||
if (opened_path) {
|
||||
@ -403,12 +404,10 @@ PHPAPI FILE *php_fopen_with_path(char *filename, char *mode, char *path, char **
|
||||
}
|
||||
return php_fopen_and_set_opened_path(filename, mode, opened_path);
|
||||
}
|
||||
|
||||
filename_length = strlen(filename);
|
||||
/* Absolute path open - prepend document_root in safe mode */
|
||||
#ifdef PHP_WIN32
|
||||
if (IS_SLASH(*filename) || (filename[1] == ':')) {
|
||||
#else
|
||||
if (IS_SLASH(*filename)) {
|
||||
#endif
|
||||
if (IS_ABSOLUTE_PATH(filename, filename_length)) {
|
||||
if (PG(safe_mode) && PG(doc_root)) {
|
||||
snprintf(trypath, MAXPATHLEN, "%s%s", PG(doc_root), filename);
|
||||
if (!php_checkuid(trypath, mode, 0)) {
|
||||
|
Loading…
Reference in New Issue
Block a user