diff --git a/src/libs/utils/shellcommandpage.cpp b/src/libs/utils/shellcommandpage.cpp
index 9185939f1af6c55623f92d3b8213dd38d56721de..19f8a942c02047dec92f0c4d38fd084395eda60d 100644
--- a/src/libs/utils/shellcommandpage.cpp
+++ b/src/libs/utils/shellcommandpage.cpp
@@ -151,6 +151,15 @@ void ShellCommandPage::terminate()
         m_command->cancel();
 }
 
+bool ShellCommandPage::handleReject()
+{
+    if (!isRunning())
+        return false;
+
+    terminate();
+    return true;
+}
+
 bool ShellCommandPage::isComplete() const
 {
     return m_state == Succeeded;
diff --git a/src/libs/utils/shellcommandpage.h b/src/libs/utils/shellcommandpage.h
index f648728debb77cfe0276cf6da3b96e0bb0c386ac..a9b727774a8d41942b9e05f399622f70a65e889c 100644
--- a/src/libs/utils/shellcommandpage.h
+++ b/src/libs/utils/shellcommandpage.h
@@ -62,6 +62,8 @@ public:
 
     void terminate();
 
+    bool handleReject();
+
 signals:
     void finished(bool success);