diff options
author | hjk <qtc-committer@nokia.com> | 2009-04-07 11:24:00 +0200 |
---|---|---|
committer | hjk <qtc-committer@nokia.com> | 2009-04-07 11:24:20 +0200 |
commit | 8e16a02acfa816158cbcc94b7385450d5da5eea8 (patch) | |
tree | 28a0e5cb6ee6f676d760a8d626bddf369406ed74 | |
parent | d7d8ed6d95b2d2d8db6ac3c07dfaab52fe5e05f7 (diff) | |
download | qt-creator-8e16a02acfa816158cbcc94b7385450d5da5eea8.tar.gz |
debugger: fix script debugger startup
-rw-r--r-- | src/plugins/debugger/scriptengine.cpp | 77 | ||||
-rw-r--r-- | src/plugins/debugger/scriptengine.h | 2 |
2 files changed, 47 insertions, 32 deletions
diff --git a/src/plugins/debugger/scriptengine.cpp b/src/plugins/debugger/scriptengine.cpp index cf9e4827a7..75513042ee 100644 --- a/src/plugins/debugger/scriptengine.cpp +++ b/src/plugins/debugger/scriptengine.cpp @@ -63,6 +63,12 @@ using namespace Debugger; using namespace Debugger::Internal; using namespace Debugger::Constants; +//#define DEBUG_SCRIPT 1 +#if DEBUG_SCRIPT +# define SDEBUG(s) qDebug() << s +#else +# define SDEBUG(s) +#endif /////////////////////////////////////////////////////////////////////// // @@ -100,24 +106,29 @@ ScriptAgent::ScriptAgent(ScriptEngine *debugger, QScriptEngine *script) void ScriptAgent::contextPop() { - qDebug() << "ScriptAgent::contextPop: "; + SDEBUG("ScriptAgent::contextPop: "); } void ScriptAgent::contextPush() { - qDebug() << "ScriptAgent::contextPush: "; + SDEBUG("ScriptAgent::contextPush: "); } void ScriptAgent::exceptionCatch(qint64 scriptId, const QScriptValue & exception) { - qDebug() << "ScriptAgent::exceptionCatch: " << scriptId << &exception; + Q_UNUSED(scriptId); + Q_UNUSED(exception); + SDEBUG("ScriptAgent::exceptionCatch: " << scriptId << &exception); } void ScriptAgent::exceptionThrow(qint64 scriptId, const QScriptValue &exception, bool hasHandler) { - qDebug() << "ScriptAgent::exceptionThrow: " << scriptId << &exception - << hasHandler; + Q_UNUSED(scriptId); + Q_UNUSED(exception); + Q_UNUSED(hasHandler); + SDEBUG("ScriptAgent::exceptionThrow: " << scriptId << &exception + << hasHandler); } void ScriptAgent::functionEntry(qint64 scriptId) @@ -128,12 +139,14 @@ void ScriptAgent::functionEntry(qint64 scriptId) void ScriptAgent::functionExit(qint64 scriptId, const QScriptValue &returnValue) { - qDebug() << "ScriptAgent::functionExit: " << scriptId << &returnValue; + Q_UNUSED(scriptId); + Q_UNUSED(returnValue); + SDEBUG("ScriptAgent::functionExit: " << scriptId << &returnValue); } void ScriptAgent::positionChange(qint64 scriptId, int lineNumber, int columnNumber) { - //qDebug() << "ScriptAgent::position: " << lineNumber; + SDEBUG("ScriptAgent::position: " << lineNumber); Q_UNUSED(scriptId); Q_UNUSED(lineNumber); Q_UNUSED(columnNumber); @@ -147,14 +160,14 @@ void ScriptAgent::scriptLoad(qint64 scriptId, const QString &program, Q_UNUSED(program); Q_UNUSED(fileName); Q_UNUSED(baseLineNumber); - //qDebug() << "ScriptAgent::scriptLoad: " << program << fileName - // << baseLineNumber; + SDEBUG("ScriptAgent::scriptLoad: " << program << fileName + << baseLineNumber); } void ScriptAgent::scriptUnload(qint64 scriptId) { Q_UNUSED(scriptId); - //qDebug() << "ScriptAgent::scriptUnload: " << scriptId; + SDEBUG("ScriptAgent::scriptUnload: " << scriptId); } @@ -181,7 +194,7 @@ ScriptEngine::~ScriptEngine() void ScriptEngine::executeDebuggerCommand(const QString &command) { Q_UNUSED(command); - qDebug() << "FIXME: ScriptEngine::executeDebuggerCommand()"; + SDEBUG("FIXME: ScriptEngine::executeDebuggerCommand()"); } void ScriptEngine::shutdown() @@ -191,7 +204,7 @@ void ScriptEngine::shutdown() void ScriptEngine::exitDebugger() { - //qDebug() << " ScriptEngine::exitDebugger()"; + SDEBUG("ScriptEngine::exitDebugger()"); m_stopped = false; m_stopOnNextLine = false; m_scriptEngine->abortEvaluation(); @@ -212,19 +225,21 @@ bool ScriptEngine::startDebugger() m_scriptContents = stream.readAll(); scriptFile.close(); attemptBreakpointSynchronization(); + qq->notifyInferiorRunningRequested(); + QTimer::singleShot(0, this, SLOT(runInferior())); return true; } void ScriptEngine::continueInferior() { - //qDebug() << "ScriptEngine::continueInferior()"; + SDEBUG("ScriptEngine::continueInferior()"); m_stopped = false; m_stopOnNextLine = false; } void ScriptEngine::runInferior() { - //qDebug() << "ScriptEngine::runInferior()"; + SDEBUG("ScriptEngine::runInferior()"); QScriptValue result = m_scriptEngine->evaluate(m_scriptContents, m_scriptFileName); } @@ -232,40 +247,40 @@ void ScriptEngine::interruptInferior() { m_stopped = false; m_stopOnNextLine = true; - qDebug() << "FIXME: ScriptEngine::interruptInferior()"; + SDEBUG("FIXME: ScriptEngine::interruptInferior()"); } void ScriptEngine::stepExec() { - //qDebug() << "FIXME: ScriptEngine::stepExec()"; + //SDEBUG("FIXME: ScriptEngine::stepExec()"); m_stopped = false; m_stopOnNextLine = true; } void ScriptEngine::stepIExec() { - //qDebug() << "FIXME: ScriptEngine::stepIExec()"; + //SDEBUG("FIXME: ScriptEngine::stepIExec()"); m_stopped = false; m_stopOnNextLine = true; } void ScriptEngine::stepOutExec() { - //qDebug() << "FIXME: ScriptEngine::stepOutExec()"; + //SDEBUG("FIXME: ScriptEngine::stepOutExec()"); m_stopped = false; m_stopOnNextLine = true; } void ScriptEngine::nextExec() { - //qDebug() << "FIXME: ScriptEngine::nextExec()"; + //SDEBUG("FIXME: ScriptEngine::nextExec()"); m_stopped = false; m_stopOnNextLine = true; } void ScriptEngine::nextIExec() { - //qDebug() << "FIXME: ScriptEngine::nextIExec()"; + //SDEBUG("FIXME: ScriptEngine::nextIExec()"); m_stopped = false; m_stopOnNextLine = true; } @@ -274,20 +289,20 @@ void ScriptEngine::runToLineExec(const QString &fileName, int lineNumber) { Q_UNUSED(fileName); Q_UNUSED(lineNumber); - qDebug() << "FIXME: ScriptEngine::runToLineExec()"; + SDEBUG("FIXME: ScriptEngine::runToLineExec()"); } void ScriptEngine::runToFunctionExec(const QString &functionName) { Q_UNUSED(functionName); - qDebug() << "FIXME: ScriptEngine::runToFunctionExec()"; + SDEBUG("FIXME: ScriptEngine::runToFunctionExec()"); } void ScriptEngine::jumpToLineExec(const QString &fileName, int lineNumber) { Q_UNUSED(fileName); Q_UNUSED(lineNumber); - qDebug() << "FIXME: ScriptEngine::jumpToLineExec()"; + SDEBUG("FIXME: ScriptEngine::jumpToLineExec()"); } void ScriptEngine::activateFrame(int index) @@ -381,7 +396,7 @@ void ScriptEngine::setToolTipExpression(const QPoint &pos, const QString &exp0) Q_UNUSED(exp0); if (q->status() != DebuggerInferiorStopped) { - //qDebug() << "SUPPRESSING DEBUGGER TOOLTIP, INFERIOR NOT STOPPED"; + //SDEBUG("SUPPRESSING DEBUGGER TOOLTIP, INFERIOR NOT STOPPED"); return; } @@ -493,7 +508,7 @@ void ScriptEngine::maybeBreakNow(bool byFunction) return; // we just run into a breakpoint - //qDebug() << "RESOLVING BREAKPOINT AT " << fileName << lineNumber; + //SDEBUG("RESOLVING BREAKPOINT AT " << fileName << lineNumber); BreakpointData *data = handler->at(index); data->bpLineNumber = QString::number(lineNumber); data->bpFileName = fileName; @@ -508,7 +523,7 @@ void ScriptEngine::maybeBreakNow(bool byFunction) q->gotoLocation(fileName, lineNumber, true); qq->watchHandler()->reinitializeWatchers(); - //qDebug() << "UPDATE LOCALS"; + //SDEBUG("UPDATE LOCALS"); // // Build stack @@ -545,10 +560,10 @@ void ScriptEngine::maybeBreakNow(bool byFunction) // FIXME: Use an extra thread. This here is evil m_stopped = true; while (m_stopped) { - //qDebug() << "LOOPING"; + //SDEBUG("LOOPING"); QApplication::processEvents(); } - //qDebug() << "RUNNING AGAIN"; + //SDEBUG("RUNNING AGAIN"); } void ScriptEngine::updateWatchModel() @@ -567,7 +582,7 @@ void ScriptEngine::updateWatchModel() void ScriptEngine::updateSubItem(const WatchData &data0) { WatchData data = data0; - //qDebug() << "\nUPDATE SUBITEM: " << data.toString(); + //SDEBUG("\nUPDATE SUBITEM: " << data.toString()); QTC_ASSERT(data.isValid(), return); if (data.isTypeNeeded() || data.isValueNeeded()) { @@ -641,7 +656,7 @@ void ScriptEngine::updateSubItem(const WatchData &data0) qq->watchHandler()->insertData(data1); ++numChild; } - //qDebug() << " ... CHILDREN: " << numChild; + //SDEBUG(" ... CHILDREN: " << numChild); data.setChildCount(numChild); data.setChildrenUnneeded(); qq->watchHandler()->insertData(data); @@ -656,7 +671,7 @@ void ScriptEngine::updateSubItem(const WatchData &data0) ++numChild; } data.setChildCount(numChild); - //qDebug() << " ... CHILDCOUNT: " << numChild; + //SDEBUG(" ... CHILDCOUNT: " << numChild); qq->watchHandler()->insertData(data); return; } diff --git a/src/plugins/debugger/scriptengine.h b/src/plugins/debugger/scriptengine.h index e42e8d63a9..33e102e750 100644 --- a/src/plugins/debugger/scriptengine.h +++ b/src/plugins/debugger/scriptengine.h @@ -82,7 +82,7 @@ private: void exitDebugger(); void continueInferior(); - void runInferior(); + Q_SLOT void runInferior(); void interruptInferior(); void runToLineExec(const QString &fileName, int lineNumber); |