Rewrote 'we' word a little, rewrote mail order to use SQL_INSERTID() instead of anoth...
[mailer.git] / inc / loader / load-extension.php
index 9d2d351..8de1d6a 100644 (file)
@@ -18,7 +18,7 @@
  * $Author::                                                          $ *
  * -------------------------------------------------------------------- *
  * Copyright (c) 2003 - 2009 by Roland Haeder                           *
- * Copyright (c) 2009 - 2011 by Mailer Developer Team                   *
+ * Copyright (c) 2009 - 2012 by Mailer Developer Team                   *
  * For more information visit: http://mxchange.org                      *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
@@ -53,7 +53,7 @@ if (($GLOBALS['cache_instance']->loadCacheFile('extension')) && ($GLOBALS['cache
        // Init extension inc-pool
        $EXT_POOL = array();
 
-       // Do we have entries?
+       // Are there entries?
        if (count($EXT_DUMMY) > 0) {
                // Init arrays
                $EXT_NAMES = array();
@@ -67,7 +67,7 @@ if (($GLOBALS['cache_instance']->loadCacheFile('extension')) && ($GLOBALS['cache
 
                        // Load extension file itself
                        if (($EXT_DUMMY['ext_active'][$k] == 'Y') || ($EXT_DUMMY['ext_keep'][$k] == 'Y')) {
-                               $EXT_POOL[] = $ext_name;
+                               array_push($EXT_POOL, $ext_name);
                        } // END - if
 
                        // Version number
@@ -149,8 +149,15 @@ if (($GLOBALS['cache_instance']->loadCacheFile('extension')) && ($GLOBALS['cache
        while ($content = SQL_FETCHARRAY($result)) {
                // Load extension
                if (!loadExtension($content['ext_name'], 'test')) {
-                       // Didn't load so deactivate it
-                       doDeactivateExtension($content['ext_name'], true);
+                       // Is the name valid?
+                       if (!isExtensionNameValid($content['ext_name'])) {
+                               // Is not valid name (empty ext-foo.php script)
+                               SQL_QUERY_ESC("DELETE LOW_PRIORITY FROM `{?_MYSQL_PREFIX?}_extensions` WHERE `ext_name`='%s' LIMIT 1",
+                                       array($content['ext_name']), __FILE__, __LINE__);
+                       } else {
+                               // Didn't load so deactivate it
+                               doDeactivateExtension($content['ext_name'], true);
+                       }
 
                        // ... and skip it
                        continue;