Commit Graph

70 Commits

Author SHA1 Message Date
ck
0a0b16a1db Added more dumper auto tests.
Added test for QImage and fixed bug uncovered by that test.
Also prepared test for QSharedPointer.
2009-07-16 14:35:49 +02:00
Friedemann Kleint
562b417036 Debugger: Remove unneeded expression for dumping QVector.
...thus enabling dumping of it in CDB.
Reviewed-by: hjk <qtc-committer@nokia.com>
2009-07-16 12:09:24 +02:00
Friedemann Kleint
7a847df2b7 Fix CDB/output dumperversion correctly, dump maps correctly. 2009-07-15 16:07:57 +02:00
hjk
a16aa2e0d6 debugger: remove duplicated 'completeSuffix' entry in QFileInfo dumper 2009-07-15 09:26:00 +02:00
hjk
56a81a06b5 debugger: fix regression in QMap dumping introduced in 5bd1d2a0 2009-07-14 10:08:12 +02:00
hjk
b1761033ea debugger: workaround for gdb reporting 'std::wstring' as 'wstring' 2009-07-13 12:53:50 +02:00
ck
911d15a879 Added QDumper auto tests.
Added auto tests for QChar and QFile dumpers.
2009-07-10 14:57:50 +02:00
hjk
56b24aac36 debugger: reduce amount of data produced by the dumpers by removing
predicatable parts.
2009-07-10 13:40:54 +02:00
hjk
ef786bf32e debugger: do not output child type and numchild information if it is equal
to the ones specified in the childtype and childnumchild items
2009-07-10 13:40:54 +02:00
hjk
209037e98f debugger: remove the InnerValueResult enum and handling again.
60 lines of mainly useless code
2009-07-10 11:39:11 +02:00
hjk
206adf2d43 debugger: work on dumper auto tests 2009-07-09 10:26:54 +02:00
Friedemann Kleint
842540d9c0 Dump QObjects for CDB 2009-07-09 09:11:22 +02:00
hjk
de6fda2020 debugger: add auto tests for QList 2009-07-08 18:28:49 +02:00
Friedemann Kleint
7b15d12300 Dumper fixing, dump some common std::map, std::set types with CDB.
- std::set/map: Introduce templates to iterate the MSVC STL
  implementation depending on type (since it inherits some
  basic set_traits that depend on the key/value size.
- Retrieve types correctly in CDB (buffer too short for STL-types)
- Fix std::map in GDB broken by previous commit.
- Introduce a dumper version check in GDB/CDB.
- Make GDB parse sizes in initial dumper call as well
- Fix special sizes to work with namespaced Qt (watchutils)
2009-07-07 16:00:45 +02:00
Friedemann Kleint
61afdf6d1e Polish dumpers to show enumeration values, Polish CDB locals output. 2009-07-07 11:38:01 +02:00
Friedemann Kleint
5bd1d2a028 Fix up Debugger helpers to be able to dump QObject's with CDB.
- Make container dumper routines set "childnumchild" when known
  in order to avoid roundtrips; avoid repeated invocations of
  container.end().
- Completed dumper information in some places to avoid roundtrips.
- Extended QVariant helpers by dumpers for common GUI types
  (rectangles, points, sizes, fonts, size policies).
- Introduced artificial QObjectChildList/QObjectProperty types to
  be able to dump QObject children and properties without using
  gdb expressions.
- Fixed dumping of Signal/Slot list to pass on correct types. Avoid
  recursions if signal is connected to self.
- Replaced expressions by addresses in the dumpers to it make work
  for CDB.
- Reworked dumper test program to have -a, making it usable for tests,
  add further types.
- Gdb: Clear output buffer before calling dumpers, avoiding mixups
  in case evaluation of expression fails.
- Fix the dumper parser used by CDB, do not be fooled by
  "<synthetic>" addresses, etc.
- Pass on a "dumperVersion" in initial query.
2009-07-06 17:36:50 +02:00
Friedemann Kleint
5a8b61b2ee Great debugger helper bug fixing spree.
- Fix extractTemplate() not to kill blanks in case there is no
  blank after a comma, fix hardcoded types accordingly.
- Make niceType()'s regexps ignore blanks after commas, add
  unsigned short as char_type and cache the mappings, making
  them work for CDB.
- CDB: Parse map output of dumpers correctly, generally don't
  confuse the parser by unknown keywords encountered when
  parsing children, thus enabling simple QMap types.
- Make dumpInnerValueHelper output std::string types.
2009-07-03 13:56:27 +02:00
Friedemann Kleint
6e93f4544d Display Q<>Pointers/Work towards displaying maps/QMaps in CDB.
Make dumpers pass on more size information initially, namely the
various Q<>Pointers. Introduce enum for those special template types
whose size does not vary with the arguments (Q<>Pointer,
std::allocators...) to make it more easily extensible.
Pass on some common QMapNode<> sizes as well.
Introduce an expression cache to the common QtDumperHelper
class and make dumpers pass some common expression values
(value offsets of common QMapNode<> incarnations).
Make CDBDumperHelper use the expression cache.
Extend dumper tester.
2009-07-02 16:38:15 +02:00
hjk
ffee3f98af debugger: fix regression in QVariant dumper 2009-07-01 14:15:44 +02:00
hjk
013437cfab debugger: add widget watchers by mouse click in the debugged application.
The option is hidden in the context menu.
Currently the application must be stopped.
2009-07-01 14:15:44 +02:00
hjk
6edbc900b9 debugger: refactoring 2009-06-26 13:18:17 +02:00
hjk
fc145c2c02 debugger: reduce use of macros in dumper code 2009-06-26 10:52:19 +02:00
hjk
b295aec1ad debugger: fix several small issues in the dumper code
Fix typo in QChar helper.
Add a auto tests for some of the dumpers.
Make the dumpers compilable for Qt < 4.5 for better regression tests.
Make manual tests compile with Qt < 4.5.
2009-06-26 10:51:27 +02:00
hjk
6ea24c6e65 debugger: better dumper support for QChar and unsigned short. 2009-06-24 14:37:29 +02:00
hjk
69f58777c2 debugger: also simplify diplayed type of nested std::containers 2009-06-23 10:25:06 +02:00
hjk
a4d2666b8d debugger: fix dumper for QList<T*> 2009-06-19 15:13:26 +02:00
hjk
d8b589ceff debugger: remove QtGui dependency from debugging helpers
It was only used for the watch-QImage-while-it-is-being-drawn-on feature,
which does not seem overly useful.
2009-06-18 13:39:19 +02:00
Jason McDonald
884b7af769 Update license headers and sales contact details.
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
Daniel Molkentin
6b919043bf Partitial revert of d7af85a097.
broke at least cdb.

Reviewed-By: hjk <qtc-committer@nokia.com>
2009-06-08 12:12:36 +02:00
hjk
d7af85a097 debugger: implement a dumper for QAbstractItemModel
This also squashes a namespace related bug introduced by the watchutils
refactoring.
2009-06-03 12:48:48 +02:00
hjk
ee5fb31f11 debugger: re-start work on image dumper 2009-05-29 16:25:12 +02:00
Friedemann Kleint
3ba72d0e1e Stabilized the QString debug dumper a bit on Windows.
Try to prevent dumper crashes on
unitialized variables that slow down the debugger.
Acked-by: hjk <qtc-committer@nokia.com>
2009-05-20 16:59:40 +02:00
hjk
158e5ee82c debugger: refactoring of the QObject dumper
signal lists still broken for 4.6
2009-05-13 16:12:10 +02:00
hjk
6b9f9c6086 debugger: alsways use the copied qobject_p.h for the QObject dumper 2009-05-13 14:50:49 +02:00
con
6264ba4f59 Make QString dumper fail faster in case of uninitialized variables
Reviewed-by: hjk <qtc-committer@nokia.com>
2009-05-12 16:47:56 +02:00
Friedemann Kleint
63384fbdc3 Made std::vector/std::list work with CDB dumpers. 2009-05-06 09:22:05 +02:00
Oswald Buddenhagen
0b802b31c8 less inefficient
still quite some potential ...
2009-05-05 21:00:24 +02:00
Oswald Buddenhagen
0368b2134a fix typos 2009-05-05 21:00:24 +02:00
Friedemann Kleint
bae6525976 Started on QObject dumping for CDB, make it smarter.
Try to find qobject_p.h, if it exists and use its structures
to determine the child offset.
2009-05-05 16:39:51 +02:00
hjk
14321e675d debugger: add dumper for QWeakPointer 2009-04-29 17:48:04 +02:00
Friedemann Kleint
1c56388945 Make dumpers output size information. 2009-04-29 16:52:14 +02:00
hjk
0428a109e8 debugger: fix output of weak and strong reference counts in
QSharedPointer dumper
2009-04-29 15:09:42 +02:00
Friedemann Kleint
4ca60701da Use void() funcs in the dumpers for simplicity. 2009-04-29 14:31:11 +02:00
Friedemann Kleint
72a183777e Initial work on dumpers for CDB.
Add dumper calls, parser etc. Catch crashes
in the dumper functions.
2009-04-29 14:15:09 +02:00
hjk
8f4ae5fa53 debugger: use 4.5 features in dumpers only if compiled under 4.5+ 2009-04-28 11:21:46 +02:00
hjk
462a20461a debugger: add a dumper for QSharedPointer 2009-04-28 10:59:32 +02:00
Friedemann Kleint
52915776cd Make CDB load custom dumpers.
Load in a 'well-defined' (temporary) breakpoint
at main().
2009-04-22 17:28:26 +02:00
hjk
3c7b1f4a80 debugger: return the address of the output buffer from the dumpers 2009-04-16 08:57:34 +02:00
hjk
5cb0a3cb72 debugger: put the address of the loaded helpers into the debugger log 2009-04-15 16:48:46 +02:00
hjk
353025f37f debugger: potential fix for cases where the std:: namespace is not
reported properly
2009-04-09 13:49:22 +02:00