
Change the linux verison of proc/native and proc/gdbserial (with debugserver) so that they let the target process use the terminal when delve is launched in headless mode. Windows already worked, proc/gdbserial (with rr) already worked. I couldn't find a way to make proc/gdbserial (with lldb-server) work. No tests are added because I can't think of a way to test for foregroundness of a process. Fixes #65
17 lines
345 B
Go
17 lines
345 B
Go
// +build linux darwin
|
|
|
|
package gdbserial
|
|
|
|
import (
|
|
"syscall"
|
|
"unsafe"
|
|
)
|
|
|
|
func backgroundSysProcAttr() *syscall.SysProcAttr {
|
|
return &syscall.SysProcAttr{Setpgid: true, Pgid: 0, Foreground: false}
|
|
}
|
|
|
|
func moveToForeground(pid int) {
|
|
syscall.Syscall(syscall.SYS_IOCTL, uintptr(0), uintptr(syscall.TIOCSPGRP), uintptr(unsafe.Pointer(&pid)))
|
|
}
|