Commit Graph

685 Commits

Author SHA1 Message Date
hjk
6a6cba5518 debugger: The DebuggerEngine refactoring.
This replaces the (de facto) singleton engines and data handlers by classes
that are instantiated per run. The DebuggerRunControl will now create an
object of (a class derived from) DebuggerEngine that contains all the relevant
"dynamic" data.

DebuggerManager is no more. The "singleton" bits are merged into DebuggerPlugin,
whereas the data bits went to DebuggerEngine.

There is no formal notion of a "current" DebuggerEngine. However, as there's
only one DebuggerEngine at a time that has its data models connected to the
view, there's still some "de facto" notion of a "current" engine. Calling
SomeModel::setData(int role, QVariant data) with custom role is used as the
primary dispatch mechanism from the views to the "current" data models
(and the engine, as all data models know their engine).
2010-06-22 10:59:57 +02:00
hjk
a4f412388d debugger: move m_inferiorPid from DebuggerManager to DebuggerRunControl 2010-06-15 12:51:18 +02:00
hjk
25c11c4ce0 debugger: move SnapshotHandler from DebuggerManager to DebuggerRunControl 2010-06-15 12:48:30 +02:00
hjk
ff7c543a73 debugger: move RegisterHandler from DebuggerManager to DebuggerRunControl 2010-06-15 11:43:20 +02:00
hjk
12fd2a6091 debugger: move showModuleSymbols from DebuggerManager to DebuggerEngine 2010-06-15 11:43:20 +02:00
hjk
69a4ed3255 debugger: move ModulesHandler from DebuggerManager to DebuggerRunControl 2010-06-15 11:43:20 +02:00
hjk
9f7e9dc0ae debugger: refactoring of output channeling 2010-06-14 18:22:09 +02:00
hjk
b3aff6b919 debugger: more of the RunControl refactoring
Pass output through the RunControl instead of the DebuggerManager.
2010-06-14 17:24:13 +02:00
hjk
6ed9830971 debugger: move DebuggerRunControl *m_runControl into IDebuggerEngine.
Plan is to identify make identify an IDebuggerEngine incarnation with
a RunControl.
2010-06-14 17:24:13 +02:00
Friedemann Kleint
effa8a38da Windows compilation fix / 97edcb7977 2010-06-14 11:21:31 +02:00
hjk
97edcb7977 debugger: start 'runcontrol-ification' of the debugger plugin.
This replaces most uses of DebuggerStartParameters by DebuggerRunControl
which is a simple RunControl with a DebuggerStartParameters member.

Plan is to move all global state to the run controls, and possibly
introduce specialized ones for core debugging etc.
2010-06-14 10:45:11 +02:00
Bill King
ac1098d1b8 Fixes possible buffer overflow situation. 2010-06-11 13:41:31 +10:00
Tobias Hunger
5d5f647f3d Fix preprocessor directives
* The standard says all preprocessor directives have to start
   at column 0.
2010-06-10 13:28:14 +02:00
hjk
5806009d29 Merge remote branch 'origin/2.0'
Conflicts:
	doc/qtcreator.qdoc
	src/plugins/debugger/debuggermanager.cpp
	src/plugins/texteditor/basetexteditor.cpp
2010-06-02 09:57:23 +02:00
hjk
661308c96e debugger: always switch to frame 0 before trying to leave frame 2010-06-01 16:53:32 +02:00
Oswald Buddenhagen
123937fb2a Merge remote branch 'origin/2.0' 2010-05-28 12:45:41 +02:00
hjk
5afeaa720d debugger: more robust version string parsing
Fix for QTCREATORBUG-1490

Reviewed-By: Friedemann Kleint
2010-05-27 15:55:01 +02:00
hjk
213a18db87 debugger: -thread-info does not exist on Mac 2010-05-19 15:16:30 +02:00
hjk
c50dd85088 debugger: show return value of last function call in Locals and Watchers view
Works only with gdb/Python so far.
2010-05-19 12:00:56 +02:00
hjk
35bfbec797 debugger: refactor thread related class 2010-05-18 12:13:27 +02:00
hjk
2f69bae63f debugger: gather more information on threads when easily available 2010-05-18 12:13:27 +02:00
ck
fc357c31f5 Debugger: Fix LD_PRELOAD for GDB-over-SSH. 2010-05-10 16:35:41 +02:00
hjk
3795539e0a debugger: fix scheduling of deletion of data watch points 2010-05-10 15:39:41 +02:00
hjk
01aabbda82 debugger: rename some breakpoint related functions 2010-05-10 15:39:41 +02:00
hjk
6c0b947ec1 debugger: first shot a implementing data watchpoints 2010-05-07 15:17:11 +02:00
hjk
68c0ee28e2 debugger: remove some #ifdef Q_OS_* 2010-05-05 17:07:08 +02:00
ck
ef7c5fae60 Debugger: Support running GDB over SSH.
Reviewed-by: hjk
2010-05-05 12:51:21 +02:00
hjk
15a595b429 debugger: refactor module/symbol view 2010-05-04 18:00:10 +02:00
hjk
5560f5e2f1 debugger: make it possible to bulk-assign breakpoints to threads 2010-04-30 14:22:48 +02:00
hjk
24d1fbd15b debugger: support for per-thread breakpoints 2010-04-30 13:41:19 +02:00
hjk
0205d1c3a6 debugger: 'fix' handling of input syntax change for the 'disassemble' command 2010-04-29 12:07:59 +02:00
hjk
ac41af3638 debugger: break less when attemptint to assign strings with embedded newlines
It's still failing, but does not disturb the communication any longer.
2010-04-27 15:33:23 +02:00
hjk
9a8ac49c2c debugger: new files for WatchData; move potentially shared code to watchutils.cpp 2010-04-27 15:33:22 +02:00
hjk
1af67204b7 debugger: prevent crash if breakpoint has been removed before the 'info line'
response was received
2010-04-21 10:16:40 +02:00
Erik Verbruggen
e3bceff3ee Separated child-process stdout/stderr, and seperated "our" output/errors.
So now the "Applciation Output" can distinguish between these four, and
handle them appropriately.
2010-04-19 14:21:48 +02:00
Friedemann Kleint
70153d1c73 Debugger[CDB]: Disable watchers.
As they work only in a very limited way and slow down debugging.
2010-04-16 16:37:23 +02:00
hjk
ea80841025 debugger: fix QTCREATORBUG-1127 (kill on disabling multiple breakpoints) 2010-04-12 15:24:56 +02:00
hjk
ddecf8b05e debugger: prevent endless loop on strange disassembler results 2010-04-12 12:02:16 +02:00
hjk
4eb83cd8b2 debugger: basic support for address-based breakpoints 2010-04-09 15:32:33 +02:00
hjk
0ea0977ca8 debugger: introduce a new category for commands that are always immediately executed
used for -exec-interrupt right now
2010-04-09 15:32:33 +02:00
hjk
d8cc842d49 debugger: let 'Reset Debugger' apply a bit more force 2010-04-09 15:32:33 +02:00
Friedemann Kleint
90a69474d9 Debugger[gdb/MinGW]: Ignore spurious 'running' warnings when attaching.
Reviewed-by: hjk
Task-number: QTCREATORBUG-1020
2010-04-09 12:49:21 +02:00
hjk
362628b9ae debugger: fix cli disassembler command for an address range 2010-04-09 11:13:29 +02:00
Friedemann Kleint
c6779be8b8 Debugger[Symbian]: Remove Symbian/trk options page. 2010-04-09 08:44:06 +02:00
Friedemann Kleint
da22181916 Debugger[gdb]: Introduce new control for gdb binaries.
Manage binaries as a map of binary-><toolchain number>.
Provide list widget and editing dialog with tooltip
showing the version. Save in settings as a flat list of
keys.
Acked-by: hjk
2010-04-08 16:55:25 +02:00
hjk
0ac8388847 debugger: fix some encoding issues, modify manual tests 2010-04-08 14:39:21 +02:00
hjk
8e0483a4ba debugger: fix 5d599456
thread-group-started was already handled
2010-04-07 15:19:01 +02:00
hjk
197dc33101 debugger: fix disassembler output handling on Mac
Apple's gdb produces MI-style output even for CLI commands when in MI mode.
2010-04-07 14:38:31 +02:00
hjk
2b8c7d6826 debugger: no need to kill the process if someone tries 'step out' on the outermost level 2010-04-07 13:06:27 +02:00
hjk
5d59945646 debugger: add a manual test for an endless loop and check for
-thread-group-started in addition to -thread-group-created
2010-04-07 09:19:36 +02:00