diff --git a/admin/upgradesettings.php b/admin/upgradesettings.php
index 7d6b33c3aaf..b3872a9d917 100644
--- a/admin/upgradesettings.php
+++ b/admin/upgradesettings.php
@@ -126,12 +126,12 @@ function output_new_settings_by_page(&$node) {
         $return = '';
         if (count($newsettings) > 0) {
             $return .= print_heading(get_string('upgradesettings','admin').' - '.$node->visiblename, '', 2, 'main', true);
+            $return .= '<fieldset class="adminsettings">' . "\n";
             foreach ($newsettings as $newsetting) {
-                $return .= '<fieldset class="adminsettings">' . "\n";
                 $return .= '<div class="clearer"><!-- --></div>' . "\n";
                 $return .= $newsetting->output_html();
-                $return .= '</fieldset>';
             }
+            $return .= '</fieldset>';
         }
         return $return;
     }