? .cvsignore ? 721400-delete-if-stale-137-D6.patch ? foo.sq3 ? log.txt ? modules.1 ? sdo-1035-locale_xss-23-D6.patch.txt ? sdo-1035-locale_xss-26-D6.patch.txt ? x.php ? sites/8888.127.0.0.1 ? sites/all/modules ? sites/all/themes ? sites/default/files ? sites/default/files2 ? sites/default/settings.php Index: includes/common.inc =================================================================== RCS file: /cvs/drupal/drupal/includes/common.inc,v retrieving revision 1.756.2.82 diff -u -p -r1.756.2.82 common.inc --- includes/common.inc 9 May 2010 14:13:31 -0000 1.756.2.82 +++ includes/common.inc 10 May 2010 18:52:13 -0000 @@ -2048,7 +2048,7 @@ function _drupal_load_stylesheet($matche * Delete all cached CSS files. */ function drupal_clear_css_cache() { - file_scan_directory(file_create_path('css'), '.*', array('.', '..', 'CVS'), 'file_delete', TRUE); + file_scan_directory(file_create_path('css'), '.*', array('.', '..', 'CVS'), '_drupal_delete_file_if_stale', TRUE); } /** @@ -2424,10 +2424,21 @@ function drupal_build_js_cache($files, $ * Delete all cached JS files. */ function drupal_clear_js_cache() { - file_scan_directory(file_create_path('js'), '.*', array('.', '..', 'CVS'), 'file_delete', TRUE); + file_scan_directory(file_create_path('js'), '.*', array('.', '..', 'CVS'), '_drupal_delete_file_if_stale', TRUE); variable_set('javascript_parsed', array()); } + +/** + * Callback to delete files modified more than a set time ago. + */ +function _drupal_delete_file_if_stale($filepath) { + // Default stale file threshold is 30 days. + if (time() - filemtime($filepath) > variable_get('drupal_stale_file_threshold', 2592000)) { + file_delete($filepath); + } +} + /** * Converts a PHP variable into its Javascript equivalent. *