In rules_include() the module checks for the presence of rules_install() to decide if to use the data contained in the cache.
That function could exist even when the module is not being installed, as a call to drupal_get_schema() causes rules.install to be included.

    //During installation we can't use the cache as the table isn't there yet
    $use_cache = !function_exists('rules_install');
    
    if ($type == 'rules_admin') {
      $files = array(drupal_get_path('module', 'rules') .'/rules.admin.inc');
    }

Comments

fago’s picture

right, thanks. Do you have a better, non-ugly idea for checking it?

The way it is works and is easy - so if there is no other easy way I think it's best option to stay with it as calls to the schema shouldn't occur often.

fago’s picture

Status: Active » Fixed

I've just reworked installation a bit to not need this check. Perhaps this also helps you with your installation problems, please test.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.

mitchell’s picture

Component: Code » Rules Core

Updated component.