mirror of
https://github.com/php/php-src.git
synced 2024-09-21 18:07:23 +00:00
Fixed realpath cache for existent file with CWD_FILEPATH flag on win32
This commit is contained in:
parent
b6e317e25c
commit
8e0f5bbfa2
@ -489,6 +489,9 @@ CWD_API int virtual_file_ex(cwd_state *state, const char *path, verify_path_func
|
|||||||
int ret;
|
int ret;
|
||||||
int use_cache;
|
int use_cache;
|
||||||
int use_relative_path = 0;
|
int use_relative_path = 0;
|
||||||
|
#ifdef TSRM_WIN32
|
||||||
|
int is_unc;
|
||||||
|
#endif
|
||||||
TSRMLS_FETCH();
|
TSRMLS_FETCH();
|
||||||
|
|
||||||
use_cache = ((use_realpath != CWD_EXPAND) && CWDG(realpath_cache_size_limit));
|
use_cache = ((use_realpath != CWD_EXPAND) && CWDG(realpath_cache_size_limit));
|
||||||
@ -573,9 +576,6 @@ CWD_API int virtual_file_ex(cwd_state *state, const char *path, verify_path_func
|
|||||||
char *ptr, *path_copy, *free_path;
|
char *ptr, *path_copy, *free_path;
|
||||||
char *tok;
|
char *tok;
|
||||||
int ptr_length;
|
int ptr_length;
|
||||||
#ifdef TSRM_WIN32
|
|
||||||
int is_unc;
|
|
||||||
#endif
|
|
||||||
no_realpath:
|
no_realpath:
|
||||||
|
|
||||||
#ifdef TSRM_WIN32
|
#ifdef TSRM_WIN32
|
||||||
@ -738,7 +738,12 @@ no_realpath:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Store existent file in realpath cache. */
|
||||||
|
#ifdef TSRM_WIN32
|
||||||
|
if (use_cache && !is_unc) {
|
||||||
|
#else
|
||||||
if (use_cache && (use_realpath == CWD_REALPATH)) {
|
if (use_cache && (use_realpath == CWD_REALPATH)) {
|
||||||
|
#endif
|
||||||
realpath_cache_add(path, path_length, state->cwd, state->cwd_length, t TSRMLS_CC);
|
realpath_cache_add(path, path_length, state->cwd, state->cwd_length, t TSRMLS_CC);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user