diff --git a/share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp b/share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp
index ab24e06bb413b7eced54ab8a70d44ef21c61d829..1808dcc76f452f6e35146b4f7ac6ee2c09763afb 100644
--- a/share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp
+++ b/share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp
@@ -280,13 +280,19 @@ JSDebuggerAgent::JSDebuggerAgent(QScriptEngine *engine)
     : QDeclarativeDebugService("JSDebugger")
     , QScriptEngineAgent(engine)
     , d(new JSDebuggerAgentPrivate(this))
-{}
+{
+    if (status() == Enabled)
+        engine->setAgent(this);
+}
 
 JSDebuggerAgent::JSDebuggerAgent(QDeclarativeEngine *engine)
     : QDeclarativeDebugService("JSDebugger")
     , QScriptEngineAgent(QDeclarativeDebugHelper::getScriptEngine(engine))
     , d(new JSDebuggerAgentPrivate(this))
-{}
+{
+    if (status() == Enabled)
+        QDeclarativeDebugHelper::getScriptEngine(engine)->setAgent(this);
+}
 
 /*!
   Destroys this QScriptDebuggerAgent.