@@ -1164,38 +1164,31 @@ zend_result validate_timestamp_and_record(zend_persistent_script *persistent_scr
11641164 return SUCCESS ; /* Don't check timestamps of preloaded scripts */
11651165 }
11661166
1167+ double revalidate_reference_time = 0.0 ;
1168+
11671169 if (ZCG (cli_mode )) {
1168- // check current time as opposed to the "time of request"
1169- double now = 0.0 ;
11701170#ifdef HAVE_GETTIMEOFDAY
11711171 struct timeval tp = {0 };
11721172
11731173 if (UNEXPECTED (gettimeofday (& tp , NULL ) != 0 )) {
1174- now = (double )time (NULL );
1174+ revalidate_reference_time = (double )time (NULL );
11751175 } else {
1176- now = (double )(tp .tv_sec + tp .tv_usec / 1000000.00 );
1176+ revalidate_reference_time = (double )(tp .tv_sec + tp .tv_usec / 1000000.00 );
11771177 }
11781178#else
1179- now = (double )time (NULL );
1179+ revalidate_reference_time = (double )time (NULL );
11801180#endif
1181+ } else {
1182+ revalidate_reference_time = (double )ZCG (request_time );
1183+ }
11811184
1182- if (ZCG (accel_directives ).revalidate_freq && persistent_script -> dynamic_members .revalidate >= now ) {
1183- return SUCCESS ;
1184- } else if (do_validate_timestamps (persistent_script , file_handle ) == FAILURE ) {
1185- return FAILURE ;
1186- } else {
1187- persistent_script -> dynamic_members .revalidate = now + ZCG (accel_directives ).revalidate_freq ;
1188- return SUCCESS ;
1189- }
1185+ if (ZCG (accel_directives ).revalidate_freq && persistent_script -> dynamic_members .revalidate >= revalidate_reference_time ) {
1186+ return SUCCESS ;
1187+ } else if (do_validate_timestamps (persistent_script , file_handle ) == FAILURE ) {
1188+ return FAILURE ;
11901189 } else {
1191- if (ZCG (accel_directives ).revalidate_freq && persistent_script -> dynamic_members .revalidate >= ZCG (request_time )) {
1192- return SUCCESS ;
1193- } else if (do_validate_timestamps (persistent_script , file_handle ) == FAILURE ) {
1194- return FAILURE ;
1195- } else {
1196- persistent_script -> dynamic_members .revalidate = ZCG (request_time ) + ZCG (accel_directives ).revalidate_freq ;
1197- return SUCCESS ;
1198- }
1190+ persistent_script -> dynamic_members .revalidate = revalidate_reference_time + ZCG (accel_directives ).revalidate_freq ;
1191+ return SUCCESS ;
11991192 }
12001193}
12011194
0 commit comments