diff --git a/ctools.module b/ctools.module
index 903131a..3c41773 100644
--- a/ctools.module
+++ b/ctools.module
@@ -107,9 +107,21 @@ function ctools_api_version($minimum, $maximum = NULL) {
  */
 function ctools_include($file, $module = 'ctools', $dir = 'includes') {
   static $used = array();
-  if (!isset($used[$module][$dir][$file])) {
-    require_once './' . drupal_get_path('module', $module) . "/$dir/$file.inc";
-    $used[$module][$dir][$file] = true;
+  $ref = $used[$module];
+  
+  if ($dir != NULL) {
+    $ref = $used[$module][$dir];
+  }  
+    
+  if (!isset($ref[$file])) {
+    if ($dir != NULL) {    
+      require_once './' . drupal_get_path('module', $module) . "/$dir/$file.inc";
+      $used[$module][$dir][$file] = true;
+    }
+    else {
+      require_once './' . drupal_get_path('module', $module) . "/$file.inc";
+      $used[$module][$file] = true;
+    }
   }
 }
 
