Index: modules/system/system.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.admin.inc,v
retrieving revision 1.324
diff -u -r1.324 system.admin.inc
--- modules/system/system.admin.inc	7 Nov 2010 18:33:53 -0000	1.324
+++ modules/system/system.admin.inc	13 Nov 2010 02:34:56 -0000
@@ -170,10 +170,12 @@
      // content has a common place in all themes.
       $theme->incompatible_core = !isset($theme->info['core']) || ($theme->info['core'] != DRUPAL_CORE_COMPATIBILITY) || (!isset($theme->info['regions']['content']));
       $theme->incompatible_php = version_compare(phpversion(), $theme->info['php']) < 0;
+      $theme->incompatible_engine = (isset($theme->info['engine']) && empty($theme->owner));
+      $theme->incompatible_base_theme = (isset($theme->info['base theme']) && !isset($themes[$theme->info['base theme']]));
     }
     $query['token'] = drupal_get_token('system-theme-operation-link');
     $theme->operations = array();
-    if (!empty($theme->status) || !$theme->incompatible_core && !$theme->incompatible_php) {
+    if (!empty($theme->status) || !$theme->incompatible_core && !$theme->incompatible_php && !$theme->incompatible_engine && !$theme->incompatible_base_theme) {
       // Create the operations links.
       $query['theme'] = $theme->name;
       if (drupal_theme_access($theme)) {
@@ -2645,6 +2647,12 @@
         }
         $output .= '<div class="incompatible">' . t('This theme requires PHP version @php_required and is incompatible with PHP version !php_version.', array('@php_required' => $theme->info['php'], '!php_version' => phpversion())) . '</div>';
       }
+      elseif (!empty($theme->incompatible_engine)) {
+        $output .= '<div class="incompatible">' . t('This theme requires the @engine_required theme engine.', array('@engine_required' => $theme->info['engine']))  . '</div>';
+      }
+      elseif (!empty($theme->incompatible_base_theme)) {
+        $output .= '<div class="incompatible">' . t('This theme requires the @base_theme_required base theme.', array('@base_theme_required' => $theme->info['base theme'])) . '</div>';
+      }
       else {
         $output .= theme('links', array('links' => $theme->operations, 'attributes' => array('class' => array('operations', 'clearfix'))));
       }
