-
Notifications
You must be signed in to change notification settings - Fork 16
Conversation
debug.registerDebugger(TYPE, plugin); | ||
|
||
// writeFile root is workspace directory, unless given ~ | ||
var shimPath = "~/bin/c9gdbshim.js"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am looking for a way to make writefile call on demand, and only when missing
would it be ok to write this to ~/.c9/bin/c9gdbshim-<md5>.js
instead, or is this supposed to be used from other places too?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MD5 or other versioning would be fine, so long as we have a symlink or some other mechanism that always points to the latest revision from a known path, e.g., ~/.c9/bin/c9gdbshim.js
is a link for ~/.c9/bin/c9gdbhim-<md5>.js
?
This is absolutely awesome! There are several small issues i need to resolve before releasing this, but they are mostly minor tweaks
|
Thanks, @nightwing! Nice list of finishing touches, too. |
This PR makes a major change to the GDB plugin's architecture by removing its netproxy in favor of a shim. It is changed in the following ways:
Given the change, the shim now acts as a standalone nodejs script, and accepts arguments to alter its configuration. The parsing/handling of these arguments in combination with shifting management of both gdb client and server process in the shim represent a good chunk of the line changes on this PR.
I also snuck in more generalized signal handling (in addition to just SIGSEGV) and a couple of minor other fixes to catch some common problems.
Ultimately, this should address a number of issues with regard to the GDB plugin's reliability, including both #13 and #15.
Important note: