]>
src.bluestatic.org Git - macgdbp.git/log
Robert Sesek [Mon, 7 Dec 2015 06:25:41 +0000 (01:25 -0500)]
Some final header nits.
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.
Robert Sesek [Mon, 7 Dec 2015 06:11:19 +0000 (01:11 -0500)]
Remove -[DebuggerBackEnd isConnected].
Robert Sesek [Mon, 7 Dec 2015 06:04:38 +0000 (01:04 -0500)]
Remove DebuggerBackEnd.status.
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.
Robert Sesek [Mon, 7 Dec 2015 05:46:08 +0000 (00:46 -0500)]
Remove -[DebuggerBackEndDelegate errorEncountered:].
Error information is now bound via the model.
Robert Sesek [Wed, 2 Dec 2015 13:39:12 +0000 (08:39 -0500)]
Modernize VariableNode for ObjC 2.0.
Robert Sesek [Wed, 2 Dec 2015 13:23:18 +0000 (08:23 -0500)]
Remove -[DebuggerBackEndDelegate sourceUpdated:].
Use KVO to call -[DebuggerController updateSourceViewer] instead.
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.
Robert Sesek [Sat, 24 Oct 2015 06:38:37 +0000 (02:38 -0400)]
Merge branch 'message-queue' into debugger-back-end
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.
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.
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.
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.
Robert Sesek [Sun, 11 Oct 2015 20:30:37 +0000 (16:30 -0400)]
Remove stackFirstTransactionID_ tracking from DebuggerBackEnd.
Robert Sesek [Sun, 11 Oct 2015 17:46:09 +0000 (13:46 -0400)]
Clean up EvalController by using a callback in -[DebuggerBackEnd evalScript:callback:].
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.
Robert Sesek [Sat, 10 Oct 2015 21:30:07 +0000 (17:30 -0400)]
Update StackFrame for ObjC 2.
Robert Sesek [Sat, 10 Oct 2015 17:41:26 +0000 (13:41 -0400)]
Remove StackFrame.routingID.
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.
Robert Sesek [Sat, 10 Oct 2015 16:53:33 +0000 (12:53 -0400)]
Rewrite stack building in DebuggerBackEnd.
Robert Sesek [Sat, 10 Oct 2015 16:40:56 +0000 (12:40 -0400)]
Refactor -[DebuggerController fetchChildProperties:].
Robert Sesek [Sat, 10 Oct 2015 16:29:28 +0000 (12:29 -0400)]
Replace -[ProtocolClient sendCustomCommandWithFormat:...] with a block-based
version.
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_.
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.
Robert Sesek [Sat, 10 Oct 2015 14:41:12 +0000 (10:41 -0400)]
Remove unnecessary ivars from ProtocolClient.
Robert Sesek [Sat, 10 Oct 2015 14:33:01 +0000 (10:33 -0400)]
Stop logging transaction validation information.
Robert Sesek [Sat, 10 Oct 2015 14:32:13 +0000 (10:32 -0400)]
Short-circuit -[MessageQueue disconnectClient] if not connected.
Robert Sesek [Sat, 10 Oct 2015 05:19:25 +0000 (01:19 -0400)]
Update xcodeproj to build with latest OS X SDK.
Robert Sesek [Sat, 10 Oct 2015 05:15:51 +0000 (01:15 -0400)]
Cleanup from the MessageQueue rewrite.
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.
Robert Sesek [Sun, 21 Jun 2015 18:44:40 +0000 (14:44 -0400)]
Fix nil host replacement.
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.
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.
Robert Sesek [Sun, 17 May 2015 19:07:15 +0000 (15:07 -0400)]
Bump the SDK to 10.9.
Robert Sesek [Sun, 17 May 2015 19:06:56 +0000 (15:06 -0400)]
Remove unused -[ProtocolClient shouldSendMessage].
Robert Sesek [Thu, 5 Jun 2014 05:09:00 +0000 (01:09 -0400)]
Minimum target of 10.6 and 64-bit.
Robert Sesek [Sun, 30 Mar 2014 17:18:38 +0000 (13:18 -0400)]
Do not double-percent-escape the filename.
Robert Sesek [Thu, 2 Jan 2014 02:50:10 +0000 (21:50 -0500)]
Remove the thin layer around ProtocolClient that is NetworkConnection.
Robert Sesek [Wed, 3 Jul 2013 23:32:22 +0000 (19:32 -0400)]
Report stream errors from MessageQueue.
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.
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.
Robert Sesek [Thu, 20 Jun 2013 02:24:51 +0000 (22:24 -0400)]
Improve MessageQueueDelegate.
Robert Sesek [Thu, 20 Jun 2013 02:16:59 +0000 (22:16 -0400)]
Call -[NSInvocation retainArguments] in ThreadSafeDelegate.
Robert Sesek [Thu, 20 Jun 2013 02:12:03 +0000 (22:12 -0400)]
Rename NetworkConnection to not be ObjC++
Robert Sesek [Thu, 20 Jun 2013 02:11:29 +0000 (22:11 -0400)]
Convert MessageQueue to use a ThreadSafeDelegate.
Robert Sesek [Thu, 20 Jun 2013 02:05:32 +0000 (22:05 -0400)]
Write a ThreadSafeDelegate implementation, which will be used by MessageQueue.
Robert Sesek [Tue, 18 Jun 2013 23:45:54 +0000 (19:45 -0400)]
Attempt to send after successfully reading a message.
Robert Sesek [Tue, 18 Jun 2013 23:33:34 +0000 (19:33 -0400)]
When the MessageQueue disconnects, release it in ProtocolClient.
Robert Sesek [Tue, 18 Jun 2013 23:33:19 +0000 (19:33 -0400)]
Fix a silly memory bug where MessageQueue._message was autoreleased.
Robert Sesek [Tue, 18 Jun 2013 05:50:05 +0000 (01:50 -0400)]
Fix use-after-free by not removing the dequeued message until after it is sent.
Robert Sesek [Tue, 18 Jun 2013 05:49:18 +0000 (01:49 -0400)]
Perform -postReceivedMessage: only in the default mode.
Robert Sesek [Tue, 18 Jun 2013 05:44:55 +0000 (01:44 -0400)]
ProtocolClient was both a superclass and a member. Fix.
Robert Sesek [Tue, 18 Jun 2013 05:40:00 +0000 (01:40 -0400)]
Use the correct socket for CFStreamCreatePairWithSocket.
And some minor message passing cleanup.
Robert Sesek [Tue, 18 Jun 2013 05:21:05 +0000 (01:21 -0400)]
Gut the old NetworkConnection and NetworkCallbackController classes.
The old API will bridge to the new ProtocolClient until the callers can be
updated.
Robert Sesek [Tue, 18 Jun 2013 05:05:46 +0000 (01:05 -0400)]
Write ProtocolClient, the layer that talks XML on top of a MessageQueue.
This is the other piece of the split NetworkConnection class.
Robert Sesek [Tue, 18 Jun 2013 02:29:10 +0000 (22:29 -0400)]
Write MessageQueue to replace most NetworkCallbackController.
This refactors pieces of NetworkConnection and NetworkCallbackController into
a simpler class that merely deals with sequenced strings over a socket.
Robert Sesek [Sun, 16 Jun 2013 05:19:46 +0000 (01:19 -0400)]
Update the comments in NetworkCallbackController::WriteString
Robert Sesek [Sun, 16 Jun 2013 03:16:39 +0000 (23:16 -0400)]
Replace deprecated -compositeToPoint:operation: call.
Robert Sesek [Sun, 16 Jun 2013 03:12:13 +0000 (23:12 -0400)]
Fix 64-bit Debug builds.
Robert Sesek [Sun, 16 Jun 2013 01:45:41 +0000 (21:45 -0400)]
Delete some obsolete Xcode project settings.
Robert Sesek [Sun, 16 Jun 2013 00:27:37 +0000 (20:27 -0400)]
Rewrite NetworkCallbackController::WriteString to actually deal in bytes properly.
Robert Sesek [Sun, 16 Jun 2013 00:05:28 +0000 (20:05 -0400)]
Switch to using the 10.8 SDK with a 10.5 deployment target.
Robert Sesek [Tue, 11 Sep 2012 04:20:34 +0000 (00:20 -0400)]
Fix a somewhat serious bug in the WriteString loop.
memmove was being performed on |string|, which is an NSString. The proper variable
to operate on is |cString|. But even then, that's not correct because the
destination buffer is not owned. Use pointer arithmetic instead.
Robert Sesek [Mon, 3 Sep 2012 01:12:54 +0000 (21:12 -0400)]
Move out of 1.5 beta to stable, and update the copyright years.
Robert Sesek [Mon, 3 Sep 2012 01:11:45 +0000 (21:11 -0400)]
Make the eval result scrollable
Robert Sesek [Mon, 3 Sep 2012 01:01:47 +0000 (21:01 -0400)]
Sam Fleming [Mon, 13 Aug 2012 12:46:57 +0000 (13:46 +0100)]
Fix Bug #236 which caused freeze on OS X 10.8
Robert Sesek [Mon, 30 May 2011 15:56:46 +0000 (11:56 -0400)]
Add an Evaluate menu item to the Debugger menu
Robert Sesek [Mon, 30 May 2011 15:54:20 +0000 (11:54 -0400)]
Create a new icon for the Eval toolbar item
Robert Sesek [Mon, 30 May 2011 15:41:19 +0000 (11:41 -0400)]
Have the EvalWindow autosave its frame
Robert Sesek [Mon, 30 May 2011 02:23:35 +0000 (22:23 -0400)]
Remove two manual invocations of |-debuggerDisconnected| now that socket shutdown has been redone
Robert Sesek [Mon, 30 May 2011 02:16:58 +0000 (22:16 -0400)]
Add changelog entry
Robert Sesek [Mon, 30 May 2011 02:15:17 +0000 (22:15 -0400)]
Remove testing code from CloseConnection()
Robert Sesek [Mon, 30 May 2011 02:05:38 +0000 (22:05 -0400)]
Redo how socket shutdown works:
* Keep hold of the socketHandle_ from the accept callback
* close() this socket (creating a CFSocket breaks CFStreams)
* Implement -[NetworkConnectionDelegate connectionDidClose:] to reconnect if attached
* When kCFStreamEventEndEncountered is received, just go through CloseConnection(), same with kCFStreamEventErrorOccurred
Robert Sesek [Mon, 30 May 2011 01:36:45 +0000 (21:36 -0400)]
Keep track of the child socket handle and close() it properly
Robert Sesek [Mon, 30 May 2011 00:53:47 +0000 (20:53 -0400)]
Rename socket_ to listeningSocket_ and add CloseSocket() to help shut it down
Robert Sesek [Sun, 29 May 2011 20:36:28 +0000 (16:36 -0400)]
In NetworkCallbackController::WriteStreamCanAcceptBytes, check that writeStream_ exists
Robert Sesek [Sun, 29 May 2011 20:31:47 +0000 (16:31 -0400)]
Move ownership of the read and write stream from NetworkConnection to NetworkCallbackController
Robert Sesek [Mon, 2 May 2011 01:02:12 +0000 (21:02 -0400)]
Update graph a little
Robert Sesek [Sun, 1 May 2011 23:28:40 +0000 (19:28 -0400)]
Group the step commands and their box
Robert Sesek [Sun, 1 May 2011 23:27:20 +0000 (19:27 -0400)]
Remvoe dropshadows and change arrow heads in Code Flow.graffle
Robert Sesek [Sun, 1 May 2011 23:19:50 +0000 (19:19 -0400)]
Add start/end points and indicate optionality of edges in Code Flow.graffle
Robert Sesek [Sun, 1 May 2011 22:37:02 +0000 (18:37 -0400)]
Add current code flow graph document
Robert Sesek [Sun, 1 May 2011 20:01:03 +0000 (16:01 -0400)]
Remove the README.* files for modp_b64 from the project so they don't get copied into the bundle
Robert Sesek [Sun, 1 May 2011 18:54:44 +0000 (14:54 -0400)]
Fix a warning in Preferences.xib about checkbox image scaling
Robert Sesek [Sun, 1 May 2011 18:14:13 +0000 (14:14 -0400)]
Add StripLineBreaksValueTransformer and use it for displaying values in the variable list.
Robert Sesek [Sun, 1 May 2011 18:06:06 +0000 (14:06 -0400)]
In |-[NSXMLElement(GDBpAdditions) base64DecodedValue]|, recursively print objects.
This fixes #168.
Robert Sesek [Sun, 1 May 2011 17:03:35 +0000 (13:03 -0400)]
Get the base64-decoded value of the when showing evaluated script responses
Robert Sesek [Sun, 1 May 2011 16:54:08 +0000 (12:54 -0400)]
Merge branch 'eval-sheet'
Robert Sesek [Sun, 1 May 2011 16:51:42 +0000 (12:51 -0400)]
Don't use |-performClick:| to wire up the Evalute button, but use the Enter key instead
Robert Sesek [Sun, 1 May 2011 16:47:48 +0000 (12:47 -0400)]
Only enable the Eval window button if connected to the debugger
Robert Sesek [Sun, 1 May 2011 16:44:44 +0000 (12:44 -0400)]
Update ChangeLog
Robert Sesek [Sun, 1 May 2011 16:42:59 +0000 (12:42 -0400)]
* Rename "Evalute Code" to "Evaluate Script" in the toolbar
* Update all the toolbar icons to not have .png in the icon name, which makes
the images show up in IB
* Add Evaluate to the default toolbar
Robert Sesek [Sun, 1 May 2011 16:37:35 +0000 (12:37 -0400)]
Actually call the delegate method, which hooks everything up.
Robert Sesek [Sun, 1 May 2011 16:32:33 +0000 (12:32 -0400)]
Add |-[DebuggerBackEndDelegate scriptWasEvaluatedWithResult:]| and plumb it through
Robert Sesek [Sun, 1 May 2011 16:25:35 +0000 (12:25 -0400)]
Add -[DebuggerBackEnd evalScript:] to send the command.
But the command format is atypical and has the transaction ID before the last
parameter, so also add -[NetworkConnection sendCustomCommandWithFormat:] to
support placing the transaction ID in an arbitrary place using a string
placeholder.
Robert Sesek [Sun, 1 May 2011 16:09:16 +0000 (12:09 -0400)]
XIB changes:
* Hook up resize springs
* Set font to Menlo
* Hook up the Enter key to the evaluate button
Robert Sesek [Sun, 1 May 2011 14:56:25 +0000 (10:56 -0400)]
Hook up the Evaluate button
Robert Sesek [Sat, 30 Apr 2011 23:43:44 +0000 (19:43 -0400)]
Fix a leak by autoreleasing in the |-sheetDidEnd...|