? .project
? install_cache_change.patch
? module_implements_cache_rerolled-2.patch
? module_implements_cache_rerolled-3.patch
? module_implements_cache_rerolled-4-test.patch
? module_implements_cache_rerolled-5.patch
? module_implements_cache_rerolled-6.patch
? module_implements_cache_rerolled-7.patch
? module_implements_cache_rerolled-8.patch
? module_implements_cache_rerolled-9.patch
? module_implements_cache_rerolled.patch
? sites/default/files
? sites/default/private
? sites/default/settings.php
Index: update.php
===================================================================
RCS file: /cvs/drupal/drupal/update.php,v
retrieving revision 1.303
diff -r1.303 update.php
294a295,297
>   // Reset the module_implements() cache.
>   module_implements('', FALSE, TRUE);
> 
Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.988
diff -r1.988 common.inc
2405a2406
>   module_implements_write_cache();
Index: includes/module.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/module.inc,v
retrieving revision 1.157
diff -r1.157 module.inc
17d16
<   module_implements('', FALSE, TRUE);
347,348c346
<   static $implementations;
< 
---
>   $implementations = &drupal_static(__FUNCTION__, array());
350a349
>     cache_set('module_implements', array());
352a352,361
>   
>   if (empty($implementations)) {
>     $implementations = cache_get('module_implements');
>     if ($implementations === FALSE) {
>     	$implementations = array();
>     }
>     else {
>     	$implementations = $implementations->data;
>     }
>   }
359c368,380
<         $implementations[$hook][] = $module;
---
>         $implementations[$hook][$module] = $module;
>         // We added  something to the cache, so write it when we're done.
>         $implementations['#write_cache'] = TRUE;
>       }
>     }
>   }
>   else {
>     foreach ($implementations[$hook] as $module) {
>       if (!module_hook($module, $hook)) {
>         // Ensure no undefined function errors for calling functions.
>         unset($implementations[$hook][$module]);
>         // Write the cache later as we changed the $implementations array.
>         $implementations['#write_cache'] = TRUE;
373a395,405
>  * Write to the module_implements() cache.
>  */
> function module_implements_write_cache() {
>   $implementations = &drupal_static('module_implements');
>   // Check wether we need to write the cache.
>   if (isset($implementations['#write_cache'])) {
>     cache_set('module_implements', $implementations);
>   }
> }
> 
> /**
