@@ -1847,7 +1847,9 @@ zend_persistent_script *zend_file_cache_script_load(zend_file_handle *file_handl
1847
1847
zend_accel_error (ACCEL_LOG_WARNING , "opcache cannot read from file '%s' (info)\n" , filename );
1848
1848
zend_file_cache_flock (fd , LOCK_UN );
1849
1849
close (fd );
1850
- zend_file_cache_unlink (filename );
1850
+ if (!ZCG (accel_directives ).file_cache_read_only ) {
1851
+ zend_file_cache_unlink (filename );
1852
+ }
1851
1853
efree (filename );
1852
1854
return NULL ;
1853
1855
}
@@ -1857,15 +1859,19 @@ zend_persistent_script *zend_file_cache_script_load(zend_file_handle *file_handl
1857
1859
zend_accel_error (ACCEL_LOG_WARNING , "opcache cannot read from file '%s' (wrong header)\n" , filename );
1858
1860
zend_file_cache_flock (fd , LOCK_UN );
1859
1861
close (fd );
1860
- zend_file_cache_unlink (filename );
1862
+ if (!ZCG (accel_directives ).file_cache_read_only ) {
1863
+ zend_file_cache_unlink (filename );
1864
+ }
1861
1865
efree (filename );
1862
1866
return NULL ;
1863
1867
}
1864
1868
if (memcmp (info .system_id , zend_system_id , 32 ) != 0 ) {
1865
1869
zend_accel_error (ACCEL_LOG_WARNING , "opcache cannot read from file '%s' (wrong \"system_id\")\n" , filename );
1866
1870
zend_file_cache_flock (fd , LOCK_UN );
1867
1871
close (fd );
1868
- zend_file_cache_unlink (filename );
1872
+ if (!ZCG (accel_directives ).file_cache_read_only ) {
1873
+ zend_file_cache_unlink (filename );
1874
+ }
1869
1875
efree (filename );
1870
1876
return NULL ;
1871
1877
}
@@ -1877,7 +1883,9 @@ zend_persistent_script *zend_file_cache_script_load(zend_file_handle *file_handl
1877
1883
zend_accel_error (ACCEL_LOG_WARNING , "opcache cannot unlock file '%s'\n" , filename );
1878
1884
}
1879
1885
close (fd );
1880
- zend_file_cache_unlink (filename );
1886
+ if (!ZCG (accel_directives ).file_cache_read_only ) {
1887
+ zend_file_cache_unlink (filename );
1888
+ }
1881
1889
efree (filename );
1882
1890
return NULL ;
1883
1891
}
@@ -1895,7 +1903,9 @@ zend_persistent_script *zend_file_cache_script_load(zend_file_handle *file_handl
1895
1903
zend_accel_error (ACCEL_LOG_WARNING , "opcache cannot read from file '%s' (mem)\n" , filename );
1896
1904
zend_file_cache_flock (fd , LOCK_UN );
1897
1905
close (fd );
1898
- zend_file_cache_unlink (filename );
1906
+ if (!ZCG (accel_directives ).file_cache_read_only ) {
1907
+ zend_file_cache_unlink (filename );
1908
+ }
1899
1909
zend_arena_release (& CG (arena ), checkpoint );
1900
1910
efree (filename );
1901
1911
return NULL ;
@@ -1909,7 +1919,9 @@ zend_persistent_script *zend_file_cache_script_load(zend_file_handle *file_handl
1909
1919
if (ZCG (accel_directives ).file_cache_consistency_checks &&
1910
1920
(actual_checksum = zend_adler32 (ADLER32_INIT , mem , info .mem_size + info .str_size )) != info .checksum ) {
1911
1921
zend_accel_error (ACCEL_LOG_WARNING , "corrupted file '%s' excepted checksum: 0x%08x actual checksum: 0x%08x\n" , filename , info .checksum , actual_checksum );
1912
- zend_file_cache_unlink (filename );
1922
+ if (!ZCG (accel_directives ).file_cache_read_only ) {
1923
+ zend_file_cache_unlink (filename );
1924
+ }
1913
1925
zend_arena_release (& CG (arena ), checkpoint );
1914
1926
efree (filename );
1915
1927
return NULL ;
0 commit comments