macgdbp.git
4 years agoIncrease the width of the segmented control, to hide the corner radius.
Robert Sesek [Tue, 3 Sep 2019 03:40:03 +0000 (23:40 -0400)]
Increase the width of the segmented control, to hide the corner radius.

4 years agoMinor tweaks to the Breakpoints table alignment.
Robert Sesek [Tue, 3 Sep 2019 03:37:41 +0000 (23:37 -0400)]
Minor tweaks to the Breakpoints table alignment.

4 years agoRewire Debugger.xib to properties rather than ivars.
Robert Sesek [Mon, 2 Sep 2019 23:08:41 +0000 (19:08 -0400)]
Rewire Debugger.xib to properties rather than ivars.

Also remove dead statusField property.

4 years agoXcode really wants this shell script to have a \n.
Robert Sesek [Mon, 2 Sep 2019 17:50:53 +0000 (13:50 -0400)]
Xcode really wants this shell script to have a \n.

4 years agoConvert the remaining DebuggerController IBOutlets to properties.
Robert Sesek [Mon, 2 Sep 2019 17:27:18 +0000 (13:27 -0400)]
Convert the remaining DebuggerController IBOutlets to properties.

4 years agoFix memory problems found by the analyzer.
Robert Sesek [Mon, 2 Sep 2019 17:13:27 +0000 (13:13 -0400)]
Fix memory problems found by the analyzer.

4 years agoRefactor some of DebuggerController's ivars.
Robert Sesek [Mon, 2 Sep 2019 17:07:47 +0000 (13:07 -0400)]
Refactor some of DebuggerController's ivars.

Use _leadingUnderscore style and move non-IBOutlets to the .m file.

4 years agoRemove unused -[DebuggerController resetDisplays].
Robert Sesek [Mon, 2 Sep 2019 16:59:24 +0000 (12:59 -0400)]
Remove unused -[DebuggerController resetDisplays].

4 years agoEnable the App Sandbox.
Robert Sesek [Mon, 2 Sep 2019 03:45:35 +0000 (23:45 -0400)]
Enable the App Sandbox.

Outbound network connections are needed for Sparkle.

This will not work without enabling code signing, though.

4 years agoChange the "Attached" toolbar button style to not be a checkbox.
Robert Sesek [Mon, 2 Sep 2019 03:14:08 +0000 (23:14 -0400)]
Change the "Attached" toolbar button style to not be a checkbox.

And whatever else Xcode wanted to do to this XIB.

5 years agoFix some new warnings about integer truncation.
Robert Sesek [Wed, 28 Nov 2018 05:45:18 +0000 (00:45 -0500)]
Fix some new warnings about integer truncation.

5 years agoSet recommended Xcode 10 project settings.
Robert Sesek [Wed, 28 Nov 2018 05:44:58 +0000 (00:44 -0500)]
Set recommended Xcode 10 project settings.

5 years agoSwitch away from deprecated base64 methods.
Robert Sesek [Wed, 28 Nov 2018 05:41:51 +0000 (00:41 -0500)]
Switch away from deprecated base64 methods.

5 years agoUpgrade project to Xcode 10.
Robert Sesek [Wed, 28 Nov 2018 05:41:06 +0000 (00:41 -0500)]
Upgrade project to Xcode 10.

This also increases the deployment target to macOS 10.9.

7 years agoAdd support for call breakpoints to BreakpointManager.
Robert Sesek [Tue, 6 Dec 2016 04:40:46 +0000 (23:40 -0500)]
Add support for call breakpoints to BreakpointManager.

Also switch Breakpoint to using convience constructors.

7 years agoAdd UI for setting sybmolic breakpoints.
Robert Sesek [Mon, 5 Dec 2016 05:04:02 +0000 (00:04 -0500)]
Add UI for setting sybmolic breakpoints.

This also modifies the breakpoint list to show them.

7 years agoMove the status into the toolbar, and remove it from the bottom of the window.
Robert Sesek [Mon, 5 Dec 2016 03:44:45 +0000 (22:44 -0500)]
Move the status into the toolbar, and remove it from the bottom of the window.

7 years agoFix up Eval after moving it into the debugger.
Robert Sesek [Mon, 5 Dec 2016 02:54:12 +0000 (21:54 -0500)]
Fix up Eval after moving it into the debugger.

- Unconditionally validate the main menu item.
- Remove the close button from the XIB.

7 years agoRemove -[Breakpoint hash] and fix -isEqual:.
Robert Sesek [Mon, 5 Dec 2016 02:50:55 +0000 (21:50 -0500)]
Remove -[Breakpoint hash] and fix -isEqual:.

7 years agoStore the last-used debugger segment in prefs.
Robert Sesek [Mon, 5 Dec 2016 01:04:52 +0000 (20:04 -0500)]
Store the last-used debugger segment in prefs.

7 years agoMake the add breakpoint button a pull-down menu.
Robert Sesek [Sun, 4 Dec 2016 23:51:46 +0000 (18:51 -0500)]
Make the add breakpoint button a pull-down menu.

7 years agoAdd backend Breakpoint support for symbolic breakpoints.
Robert Sesek [Sun, 4 Dec 2016 23:01:07 +0000 (18:01 -0500)]
Add backend Breakpoint support for symbolic breakpoints.

7 years agoMake BreakpointManager a property of DebuggerModel, rather than a singleton.
Robert Sesek [Sun, 4 Dec 2016 06:08:34 +0000 (01:08 -0500)]
Make BreakpointManager a property of DebuggerModel, rather than a singleton.

7 years agoRemove the dedicated Breakpoints source view.
Robert Sesek [Sun, 4 Dec 2016 05:41:49 +0000 (00:41 -0500)]
Remove the dedicated Breakpoints source view.

Use the same source view for the stack as the breakpoints.

7 years agoFix clipping of the Bookmarks.xib add/remove buttons.
Robert Sesek [Sun, 4 Dec 2016 05:12:08 +0000 (00:12 -0500)]
Fix clipping of the Bookmarks.xib add/remove buttons.

7 years agoMake BSSourceView.markers be a set of line numbers, rather than Breakpoint*.
Robert Sesek [Fri, 2 Dec 2016 13:34:32 +0000 (08:34 -0500)]
Make BSSourceView.markers be a set of line numbers, rather than Breakpoint*.

7 years agoFix BSSourceView not re-drawing when the marked line or breakpoints change.
Robert Sesek [Wed, 30 Nov 2016 02:38:26 +0000 (21:38 -0500)]
Fix BSSourceView not re-drawing when the marked line or breakpoints change.

7 years agoMove the Eval window into a tabbed section.
Robert Sesek [Fri, 5 Aug 2016 01:53:12 +0000 (21:53 -0400)]
Move the Eval window into a tabbed section.

7 years ago-[AppDelegate showDebuggerWindow:] should select the Variables tab.
Robert Sesek [Thu, 4 Aug 2016 05:21:21 +0000 (01:21 -0400)]
-[AppDelegate showDebuggerWindow:] should select the Variables tab.

7 years agoCall -[DebuggerController updateSegmentControl] when the superview frame changes.
Robert Sesek [Thu, 4 Aug 2016 05:18:12 +0000 (01:18 -0400)]
Call -[DebuggerController updateSegmentControl] when the superview frame changes.

7 years agoSet an autosave name for the main Debugger split view.
Robert Sesek [Thu, 4 Aug 2016 05:11:38 +0000 (01:11 -0400)]
Set an autosave name for the main Debugger split view.

7 years agoMove Breakpoints from a window to a view in the main debugger.
Robert Sesek [Thu, 4 Aug 2016 05:10:02 +0000 (01:10 -0400)]
Move Breakpoints from a window to a view in the main debugger.

7 years agoAdd a tab view and segmented control for selection, for Variables and Breakpoints.
Robert Sesek [Thu, 4 Aug 2016 04:52:31 +0000 (00:52 -0400)]
Add a tab view and segmented control for selection, for Variables and Breakpoints.

8 years agoReplace explicit |-display| with |-setNeedsDisplay:YES| when updating the source...
John Cook [Mon, 15 Feb 2016 02:05:16 +0000 (13:05 +1100)]
Replace explicit |-display| with |-setNeedsDisplay:YES| when updating the source viewer.

This might improve efficiency, but is the recommended method in any case.

8 years agoCreate string constants for all preference names.
Robert Sesek [Sun, 10 Apr 2016 16:37:48 +0000 (12:37 -0400)]
Create string constants for all preference names.

8 years agoClean up +[AppDelegate load] to use ObjC 2.0 literal syntax.
Robert Sesek [Sun, 10 Apr 2016 16:22:25 +0000 (12:22 -0400)]
Clean up +[AppDelegate load] to use ObjC 2.0 literal syntax.

8 years agoUse NSData's base64 encoding/decoding and delete modp_b64.
Robert Sesek [Sun, 10 Apr 2016 16:08:57 +0000 (12:08 -0400)]
Use NSData's base64 encoding/decoding and delete modp_b64.

8 years agoUpdate copyright strings to 2016.
Robert Sesek [Sun, 10 Apr 2016 06:55:50 +0000 (02:55 -0400)]
Update copyright strings to 2016.

8 years agoRemove use of BSSplitView from Log.xib too.
Robert Sesek [Sun, 10 Apr 2016 06:54:27 +0000 (02:54 -0400)]
Remove use of BSSplitView from Log.xib too.

8 years agoFix leak of LogEntry items in ProtocolClient.
Robert Sesek [Sun, 10 Apr 2016 06:53:21 +0000 (02:53 -0400)]
Fix leak of LogEntry items in ProtocolClient.

8 years agoRemove unnecessary @synthesize directives from StackFrame and VariableNode.
Robert Sesek [Sun, 10 Apr 2016 06:51:12 +0000 (02:51 -0400)]
Remove unnecessary @synthesize directives from StackFrame and VariableNode.

8 years agoFix "Unknown class BSSplitView in Interface Builder file at path .../Breakpoints...
Robert Sesek [Sun, 10 Apr 2016 06:38:52 +0000 (02:38 -0400)]
Fix "Unknown class BSSplitView in Interface Builder file at path .../Breakpoints.nib".

8 years agoFix an unspecified crash when the file reference is not available.
John Cook [Sat, 23 Jan 2016 07:31:17 +0000 (18:31 +1100)]
Fix an unspecified crash when the file reference is not available.

-[BSSourceView errorHighlightingFile:] can be called when |file_| is nil.

8 years agoAdd John Cook to CONTRIBUTORS.
Robert Sesek [Sun, 31 Jan 2016 22:20:50 +0000 (17:20 -0500)]
Add John Cook to CONTRIBUTORS.

8 years agoIn -[DebuggerController debuggerConnected] clear out the source viewer.
John Cook [Sat, 23 Jan 2016 07:23:11 +0000 (18:23 +1100)]
In -[DebuggerController debuggerConnected] clear out the source viewer.

This prevents the cached file from being reused across runs. Fixes bug #232.

8 years agoRemove unneeded |charBuffer| variable from -[MessageQueue readMessageFromStream].
Robert Sesek [Mon, 7 Dec 2015 07:39:20 +0000 (02:39 -0500)]
Remove unneeded |charBuffer| variable from -[MessageQueue readMessageFromStream].

8 years agoInitial re-layout of the main Debugger.xib.
Robert Sesek [Mon, 7 Dec 2015 07:19:31 +0000 (02:19 -0500)]
Initial re-layout of the main Debugger.xib.

This makes the variable list full-height and makes the source view split
horizontally with the stack.

8 years agoFix two leaks found by Analyze.
Robert Sesek [Mon, 7 Dec 2015 07:08:31 +0000 (02:08 -0500)]
Fix two leaks found by Analyze.

8 years agoThis is 2.0 Beta 1.
Robert Sesek [Mon, 7 Dec 2015 06:51:23 +0000 (01:51 -0500)]
This is 2.0 Beta 1.

8 years agoCheck in the State Machine.graffle file and the output PNG.
Robert Sesek [Mon, 7 Dec 2015 06:49:27 +0000 (01:49 -0500)]
Check in the State Machine.graffle file and the output PNG.

8 years agoUpdate some .gitignore files.
Robert Sesek [Mon, 7 Dec 2015 06:48:53 +0000 (01:48 -0500)]
Update some .gitignore files.

8 years agoZero-warning build.
Robert Sesek [Mon, 7 Dec 2015 06:45:48 +0000 (01:45 -0500)]
Zero-warning build.

* Re-save all XIB files and update deployment target to match project.
* Fix some content-size warnings in Log.xib.
* Run Xcode's recommended "project settings update."
* Change some NSUInteger/NSInteger to unsigned/long types.

8 years agoMerge branch 'debugger-back-end'
Robert Sesek [Mon, 7 Dec 2015 06:30:14 +0000 (01:30 -0500)]
Merge branch 'debugger-back-end'

8 years agoSome final header nits. debugger-back-end
Robert Sesek [Mon, 7 Dec 2015 06:25:41 +0000 (01:25 -0500)]
Some final header nits.

8 years agoInject autoAttach into DebuggerBackEnd's designated initializer.
Robert Sesek [Mon, 7 Dec 2015 06:20:02 +0000 (01:20 -0500)]
Inject autoAttach into DebuggerBackEnd's designated initializer.

Also makes sure the header order matches implementation order.

8 years agoRemove -[DebuggerBackEnd isConnected].
Robert Sesek [Mon, 7 Dec 2015 06:11:19 +0000 (01:11 -0500)]
Remove -[DebuggerBackEnd isConnected].

8 years agoRemove DebuggerBackEnd.status.
Robert Sesek [Mon, 7 Dec 2015 06:04:38 +0000 (01:04 -0500)]
Remove DebuggerBackEnd.status.

8 years agoRemove DebuggerBackEndDelegate.
Robert Sesek [Mon, 7 Dec 2015 06:00:28 +0000 (01:00 -0500)]
Remove DebuggerBackEndDelegate.

The connection state is now available via the DebuggerModel, and it will
broadcast KVO to the Controller.

8 years agoRemove -[DebuggerBackEndDelegate errorEncountered:].
Robert Sesek [Mon, 7 Dec 2015 05:46:08 +0000 (00:46 -0500)]
Remove -[DebuggerBackEndDelegate errorEncountered:].

Error information is now bound via the model.

8 years agoModernize VariableNode for ObjC 2.0.
Robert Sesek [Wed, 2 Dec 2015 13:39:12 +0000 (08:39 -0500)]
Modernize VariableNode for ObjC 2.0.

8 years agoRemove -[DebuggerBackEndDelegate sourceUpdated:].
Robert Sesek [Wed, 2 Dec 2015 13:23:18 +0000 (08:23 -0500)]
Remove -[DebuggerBackEndDelegate sourceUpdated:].

Use KVO to call -[DebuggerController updateSourceViewer] instead.

8 years agoRewrite variable and property loading.
Robert Sesek [Wed, 2 Dec 2015 03:50:53 +0000 (22:50 -0500)]
Rewrite variable and property loading.

This removes the -[VariableNode dynamicChildren] hack and replaces it with
controller-driven loading.

8 years agoMerge branch 'message-queue' into debugger-back-end
Robert Sesek [Sat, 24 Oct 2015 06:38:37 +0000 (02:38 -0400)]
Merge branch 'message-queue' into debugger-back-end

8 years agoStop spamming the CPU with -[MessageQueue dequeueAndSendBlocks]. message-queue
Robert Sesek [Sat, 24 Oct 2015 06:33:44 +0000 (02:33 -0400)]
Stop spamming the CPU with -[MessageQueue dequeueAndSendBlocks].

This significantly uses CPU usage by suspending the write dispatch source until
a message comes in.

8 years agoEnsure that stack frames are loaded when the array controller selection changes.
Robert Sesek [Sat, 24 Oct 2015 05:49:16 +0000 (01:49 -0400)]
Ensure that stack frames are loaded when the array controller selection changes.

This also makes the array controller not attempt to preserve the selection.

8 years agoMove management of the stack to DebuggerModel.
Robert Sesek [Sat, 24 Oct 2015 05:23:38 +0000 (01:23 -0400)]
Move management of the stack to DebuggerModel.

This deletes the old StackController and adds a new method
-[DebuggerModel updateStack:] that updates the array, attempting to preserve
identical stack frames.

A new target MacGDBp-Tests is also added, for testing the new DebuggerModel
functionality.

8 years agoIntroduce DebuggerModel, which will be updated by the BackEnd.
Robert Sesek [Mon, 12 Oct 2015 00:05:58 +0000 (20:05 -0400)]
Introduce DebuggerModel, which will be updated by the BackEnd.

This changes the debugger status message to be updated by the new Model class.
The XIB file is also re-saved as a Xcode 7 file.

8 years agoRemove stackFirstTransactionID_ tracking from DebuggerBackEnd.
Robert Sesek [Sun, 11 Oct 2015 20:30:37 +0000 (16:30 -0400)]
Remove stackFirstTransactionID_ tracking from DebuggerBackEnd.

8 years agoClean up EvalController by using a callback in -[DebuggerBackEnd evalScript:callback:].
Robert Sesek [Sun, 11 Oct 2015 17:46:09 +0000 (13:46 -0400)]
Clean up EvalController by using a callback in -[DebuggerBackEnd evalScript:callback:].

8 years agoClean up DebuggerBackEnd and move all the ivars into the .m file.
Robert Sesek [Sun, 11 Oct 2015 17:38:17 +0000 (13:38 -0400)]
Clean up DebuggerBackEnd and move all the ivars into the .m file.

8 years agoUpdate StackFrame for ObjC 2.
Robert Sesek [Sat, 10 Oct 2015 21:30:07 +0000 (17:30 -0400)]
Update StackFrame for ObjC 2.

8 years agoRemove StackFrame.routingID.
Robert Sesek [Sat, 10 Oct 2015 17:41:26 +0000 (13:41 -0400)]
Remove StackFrame.routingID.

8 years agoUpdate xcodeproj to build with latest OS X SDK.
Robert Sesek [Sat, 10 Oct 2015 05:19:25 +0000 (01:19 -0400)]
Update xcodeproj to build with latest OS X SDK.

8 years agoRemove the old callTable_ system from DebuggerBackEnd.
Robert Sesek [Sat, 10 Oct 2015 16:59:50 +0000 (12:59 -0400)]
Remove the old callTable_ system from DebuggerBackEnd.

ProtocolClient is now responsible for dispatching blocks for response messages.

8 years agoRewrite stack building in DebuggerBackEnd.
Robert Sesek [Sat, 10 Oct 2015 16:53:33 +0000 (12:53 -0400)]
Rewrite stack building in DebuggerBackEnd.

8 years agoRefactor -[DebuggerController fetchChildProperties:].
Robert Sesek [Sat, 10 Oct 2015 16:40:56 +0000 (12:40 -0400)]
Refactor -[DebuggerController fetchChildProperties:].

8 years agoReplace -[ProtocolClient sendCustomCommandWithFormat:...] with a block-based
Robert Sesek [Sat, 10 Oct 2015 16:29:28 +0000 (12:29 -0400)]
Replace -[ProtocolClient sendCustomCommandWithFormat:...] with a block-based
version.

8 years agoRewrite parts of DebuggerBackEnd to use the new block-based ProtocolClient.
Robert Sesek [Sat, 10 Oct 2015 16:16:58 +0000 (12:16 -0400)]
Rewrite parts of DebuggerBackEnd to use the new block-based ProtocolClient.

This removes the need for callbackContext_.

8 years agoAdd a block-based -sendCommand... variant to ProtocolClient.
Robert Sesek [Sat, 10 Oct 2015 15:47:42 +0000 (11:47 -0400)]
Add a block-based -sendCommand... variant to ProtocolClient.

This starts making ProtocolClient responsible for dispatching debugger messages.

8 years agoRemove unnecessary ivars from ProtocolClient.
Robert Sesek [Sat, 10 Oct 2015 14:41:12 +0000 (10:41 -0400)]
Remove unnecessary ivars from ProtocolClient.

8 years agoStop logging transaction validation information.
Robert Sesek [Sat, 10 Oct 2015 14:33:01 +0000 (10:33 -0400)]
Stop logging transaction validation information.

8 years agoShort-circuit -[MessageQueue disconnectClient] if not connected.
Robert Sesek [Sat, 10 Oct 2015 14:32:13 +0000 (10:32 -0400)]
Short-circuit -[MessageQueue disconnectClient] if not connected.

8 years agoUpdate xcodeproj to build with latest OS X SDK.
Robert Sesek [Sat, 10 Oct 2015 05:19:25 +0000 (01:19 -0400)]
Update xcodeproj to build with latest OS X SDK.

8 years agoCleanup from the MessageQueue rewrite.
Robert Sesek [Sat, 10 Oct 2015 05:15:51 +0000 (01:15 -0400)]
Cleanup from the MessageQueue rewrite.

8 years agoRewrite MessageQueue to use libdispatch instead of CFStream and a dedicated thread.
Robert Sesek [Sat, 10 Oct 2015 03:18:37 +0000 (23:18 -0400)]
Rewrite MessageQueue to use libdispatch instead of CFStream and a dedicated thread.

8 years agoFix nil host replacement.
Robert Sesek [Sun, 21 Jun 2015 18:44:40 +0000 (14:44 -0400)]
Fix nil host replacement.

8 years agoInvalidate and release the listening socket in -[MessageQueue disconnectClient].
Robert Sesek [Mon, 18 May 2015 12:22:35 +0000 (08:22 -0400)]
Invalidate and release the listening socket in -[MessageQueue disconnectClient].

The socket could be leaked (and not re-openable) if it never accepted a
connection but was told to -disconnect.

8 years agoFix potential crash when detaching and reattaching.
Robert Sesek [Mon, 18 May 2015 12:20:28 +0000 (08:20 -0400)]
Fix potential crash when detaching and reattaching.

Waiting via sleep() in -[MessageQueue scheduleListenSocket] will ignore any
disconnect messages, since the run loop is not being serviced. Instead, wait by
pumping the loop.

8 years agoBump the SDK to 10.9.
Robert Sesek [Sun, 17 May 2015 19:07:15 +0000 (15:07 -0400)]
Bump the SDK to 10.9.

8 years agoRemove unused -[ProtocolClient shouldSendMessage].
Robert Sesek [Sun, 17 May 2015 19:06:56 +0000 (15:06 -0400)]
Remove unused -[ProtocolClient shouldSendMessage].

9 years agoMinimum target of 10.6 and 64-bit.
Robert Sesek [Thu, 5 Jun 2014 05:09:00 +0000 (01:09 -0400)]
Minimum target of 10.6 and 64-bit.

10 years agoDo not double-percent-escape the filename.
Robert Sesek [Sun, 30 Mar 2014 17:18:38 +0000 (13:18 -0400)]
Do not double-percent-escape the filename.

10 years agoRemove the thin layer around ProtocolClient that is NetworkConnection.
Robert Sesek [Thu, 2 Jan 2014 02:50:10 +0000 (21:50 -0500)]
Remove the thin layer around ProtocolClient that is NetworkConnection.

10 years agoReport stream errors from MessageQueue.
Robert Sesek [Wed, 3 Jul 2013 23:32:22 +0000 (19:32 -0400)]
Report stream errors from MessageQueue.

10 years agoWrite BSProtocolThreadInvoker to replace ThreadSafeDelegate.
Robert Sesek [Wed, 3 Jul 2013 23:14:09 +0000 (19:14 -0400)]
Write BSProtocolThreadInvoker to replace ThreadSafeDelegate.

This class protects against reentrancy, which happens when AppKit uses WebKit
on the main thread for NSAttributedString.

10 years agoConnect ProtocolClient to the LoggingController.
Robert Sesek [Fri, 28 Jun 2013 02:16:02 +0000 (22:16 -0400)]
Connect ProtocolClient to the LoggingController.

This also removes the error property from LogEntry, since it was always unused.

10 years agoImprove MessageQueueDelegate.
Robert Sesek [Thu, 20 Jun 2013 02:24:51 +0000 (22:24 -0400)]
Improve MessageQueueDelegate.

10 years agoCall -[NSInvocation retainArguments] in ThreadSafeDelegate.
Robert Sesek [Thu, 20 Jun 2013 02:16:59 +0000 (22:16 -0400)]
Call -[NSInvocation retainArguments] in ThreadSafeDelegate.

10 years agoRename NetworkConnection to not be ObjC++
Robert Sesek [Thu, 20 Jun 2013 02:12:03 +0000 (22:12 -0400)]
Rename NetworkConnection to not be ObjC++

10 years agoConvert MessageQueue to use a ThreadSafeDelegate.
Robert Sesek [Thu, 20 Jun 2013 02:11:29 +0000 (22:11 -0400)]
Convert MessageQueue to use a ThreadSafeDelegate.