From 8cd370e16370df16843b24608a4a55df478fe93d Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Tue, 24 Jan 2012 13:20:42 +0100 Subject: Debugger: Fix JS debugging on Harmattan PR1.2 So far we assumend that the JSDebugAgent service switches to the Enabled state after the constructor has run. That's apparently not true for Harmattan PR1.2 (maybe the app / Qt calls process events by hand, maybe it was a race condition from the start). Fix this by checking the status already in the constructor, and register ourselves as debugger agent if status == Enabled. Change-Id: Icae189102116c8b572e05ce6c64f14b8f428ed2f Reviewed-by: hjk Reviewed-by: Alessandro Portale --- share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp b/share/qtcreator/qml/qmljsdebugger/jsdebuggeragent.cpp index ab24e06bb4..1808dcc76f 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. -- cgit v1.2.1