haiku/headers/private/debugger
Rene Gollent 7bdeef54a2 Debugger: Rework parts of report generation.
Team:
- Adjust report generation event to include a final status code for listeners.

CliContext,TeamWindow,ReportUserinterface:
- Use aforementioned status code to indicate whether report generation
  succeeded or failed.

DebugReportGenerator:
- Notify listeners if report generation fails. This may have previously
  been responsible for some bug reports where it was indicated that the
  debugger hung without exiting after being asked to save a report from
  a crashed app.
- When dumping disassembly, retrieve it directly if necessary rather than
  requesting it via the user interface listener. This also fixes the quirk
  that requesting to save a crash report while looking at the source code
  of a function would trigger switching it to disassembly visually.
- When walking the list of threads to dump, acquire references to all of
  them before starting. Otherwise, it was potentially possible for a running
  but not crashed thread to exit while we were generating the report, leaving
  us with a pointer to a deleted thread. This was most likely the cause of one
  of the crashes reported in #13082.
- When receiving the notification that source code state has changed, clear
  the waiting function. Otherwise, it was potentially possible for us to get
  other state change notifications, leading to the data semaphore being
  released too often. This would then cause later potential waits such as
  the stack frame memory dump to not actually wait when they should,
  potentially leading them to dereference objects that weren't yet ready.
  This fixes another of the crashes in #13802.
2016-12-09 23:11:23 -05:00
..
arch libdebugger: Add accessor for cpu state size. 2016-07-31 17:30:12 -04:00
controllers Debugger: Fix team restart request. 2016-07-03 13:53:51 -04:00
debug_info Debugger: Fix regression introduced in hrev50534. 2016-11-22 23:06:09 -05:00
debug_managers Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
elf Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
files Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
ids Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
model Debugger: Rework parts of report generation. 2016-12-09 23:11:23 -05:00
settings libdebugger: Add string setting type. 2016-12-05 18:17:48 -05:00
source_language Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
target_host_interface Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
types Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
user_interface Debugger: Fix team restart request. 2016-07-03 13:53:51 -04:00
util Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
value Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
DebuggerGlobals.h Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00
MessageCodes.h Debugger: Cleanup. 2016-12-05 18:17:58 -05:00
Tracing.h Debugger: Split into core library and application. 2016-06-04 13:18:39 -04:00