diff --git a/src/plugins/cpptools/completionsettingspage.cpp b/src/plugins/cpptools/completionsettingspage.cpp
index 45cf7f8d06625bcf0e175550138260cb50043855..a885f45e06d054058bd85a6db8c887a65ca4a5d0 100644
--- a/src/plugins/cpptools/completionsettingspage.cpp
+++ b/src/plugins/cpptools/completionsettingspage.cpp
@@ -42,10 +42,15 @@ using namespace CppTools::Internal;
 
 CompletionSettingsPage::CompletionSettingsPage(CppCodeCompletion *completion)
     : m_completion(completion)
-    , m_page(0)
+    , m_page(new Ui_CompletionSettingsPage)
 {
 }
 
+CompletionSettingsPage::~CompletionSettingsPage()
+{
+    delete m_page;
+}
+
 QString CompletionSettingsPage::name() const
 {
     return tr("Completion");
@@ -63,7 +68,6 @@ QString CompletionSettingsPage::trCategory() const
 
 QWidget *CompletionSettingsPage::createPage(QWidget *parent)
 {
-    m_page = new Ui_CompletionSettingsPage;
     QWidget *w = new QWidget(parent);
     m_page->setupUi(w);
 
@@ -76,13 +80,11 @@ QWidget *CompletionSettingsPage::createPage(QWidget *parent)
 
 void CompletionSettingsPage::finished(bool accepted)
 {
-    if (accepted) {
-        m_completion->setCaseSensitivity(
-                m_page->caseSensitive->isChecked() ? Qt::CaseSensitive : Qt::CaseInsensitive);
-        m_completion->setAutoInsertBraces(m_page->autoInsertBraces->isChecked());
-        m_completion->setPartialCompletionEnabled(m_page->partiallyComplete->isChecked());
-    }
+    if (!accepted)
+        return;
 
-    delete m_page;
-    m_page = 0;
+    m_completion->setCaseSensitivity(
+            m_page->caseSensitive->isChecked() ? Qt::CaseSensitive : Qt::CaseInsensitive);
+    m_completion->setAutoInsertBraces(m_page->autoInsertBraces->isChecked());
+    m_completion->setPartialCompletionEnabled(m_page->partiallyComplete->isChecked());
 }
diff --git a/src/plugins/cpptools/completionsettingspage.h b/src/plugins/cpptools/completionsettingspage.h
index f62acd03e228597d556facc88037582c1fadefe1..b241ccd3b121196e8824ab0a0eb87d9bb6b3644a 100644
--- a/src/plugins/cpptools/completionsettingspage.h
+++ b/src/plugins/cpptools/completionsettingspage.h
@@ -49,6 +49,7 @@ class CompletionSettingsPage : public Core::IOptionsPage
 {
 public:
     CompletionSettingsPage(CppCodeCompletion *completion);
+    ~CompletionSettingsPage();
 
     QString name() const;
     QString category() const;