21 Commits

Author SHA1 Message Date
e509c3ce36 proc: bugfix: status does not work with programs containing spaces
/proc/pid/stat needs more complex parsing

Fixes #239
2015-10-04 12:01:09 -07:00
c6ebd80905 Variable evaluation on arbitrary (goroutine, frame) pair. 2015-09-05 12:08:40 -05:00
8be76428c8 Remove superfluous var declarations 2015-08-27 16:48:34 -05:00
a336c92a8b Fix: Improve handling of soft signals on darwin
Fixes a bug on OSX where, if the debugged process spawned a child, when
that process received a SIGCHLD it would cause Delve to hang.

Fixes #197
2015-08-11 19:20:25 -05:00
ed9b7769fd Remove unused 'singleStepping' state on Process
We don't care, at the process level, whether or not we're single
stepping. That state is really only relevant at the thread level.
2015-08-11 08:20:44 -05:00
af55ef3522 Process.Kill: Do not kill if process already exited 2015-08-04 08:32:43 -05:00
a6fc8d11a7 Create new session/process grp for forked process 2015-07-28 12:20:07 -05:00
1727df4b1b Fix: Properly attach to running process on OSX 2015-07-15 20:37:43 -05:00
40284111d4 Kill process outright if manually forked 2015-07-11 01:43:47 -05:00
4d1dc5ad0e Inject SIGTRAP for manual stop
Instead of fighting against the normal flow, just signal a SIGTRAP and
let the existing flow handle it, as long as we set the halt flag
correctly the system should halt.
2015-07-07 15:55:22 -05:00
776e2a593f Null terminate argv array in Go land not C land 2015-07-07 14:57:36 -05:00
05517c62c1 Properly terminate C string array for execve on OSX 2015-07-07 08:42:34 -05:00
8d4a73f7dd Refactor: Reorganize guard clauses 2015-06-27 23:22:01 -05:00
29ed169848 Return error when invoking Delve with invalid path
Fixes #154
2015-06-26 23:05:15 -05:00
d919114d32 Fix: Linux - call wait4 on thread grp leader is broken
On a thread that's leader of its group,
that is ptraced and that was survived by its children.
2015-06-26 22:10:09 -05:00
102d4c89ae s/DebuggedProcess/Process/ 2015-06-20 17:54:52 -05:00
e3aade85ab Update Launch docs for Darwin 2015-06-19 08:15:54 -05:00
509c4839ae Update OSProcessDetails docs for Darwin 2015-06-19 08:14:56 -05:00
e4fc5e32c2 Refactor: Use thread-locked goroutine for ptrace ops
Previously either the terminal client or the debugger service would
either lock main goroutine to a thread or provide a locked goroutine to
run _all_ DebuggedProcess functions in. This is unnecessary because only
ptrace functions need to be run from the same thread that originated the
PT_ATTACH request.

Here we use a specific thread-locked goroutine to service any ptrace
request. That goroutine is also responsible for the initial spawning /
attaching of the process, since it must be responsible for the PT_ATTACH
request.
2015-06-13 12:57:42 -05:00
e5233e7262 Rename: s/ThreadContext/Thread/ 2015-06-12 14:51:23 -05:00
bfca6114d4 Rename package proctl -> proc 2015-06-12 14:49:23 -05:00