diff --git a/core/modules/system/system.admin.inc b/core/modules/system/system.admin.inc
index 819df67..17b47b6 100644
--- a/core/modules/system/system.admin.inc
+++ b/core/modules/system/system.admin.inc
@@ -123,7 +123,6 @@ function system_themes_page() {
     if (!empty($theme->info['hidden'])) {
       continue;
     }
-    $admin_theme_options[$theme->name] = $theme->info['name'];
     $theme->is_default = ($theme->name == $theme_default);
 
     // Identify theme screenshot.
@@ -169,6 +168,9 @@ function system_themes_page() {
         );
       }
       if (!empty($theme->status)) {
+        // Add each enabled theme to possible admin theme options.
+        $admin_theme_options[$theme->name] = $theme->info['name'];
+
         if (!$theme->is_default) {
           $theme->operations[] = array(
             'title' => t('Disable'),
@@ -241,10 +243,12 @@ function system_themes_admin_form($form, &$form_state, $theme_options) {
   );
   $form['admin_theme']['admin_theme'] = array(
     '#type' => 'select',
-    '#options' => array(0 => t('Default theme')) + $theme_options,
     '#title' => t('Administration theme'),
-    '#description' => t('Choose "Default theme" to always use the same theme as the rest of the site.'),
+    '#options' => $theme_options,
+    '#empty_value' => 0,
+    '#empty_option' => t('- Default theme -'),
     '#default_value' => variable_get('admin_theme', 0),
+    '#description' => t('Choose "Default theme" to always use the same theme as the rest of the site.'),
   );
   $form['admin_theme']['actions'] = array('#type' => 'actions');
   $form['admin_theme']['actions']['submit'] = array(
