Merge pull request #142 from JackDoan/fix-mac-buffer-resets
Fix ResetInputBuffer and ResetOutputBuffer on Darwin
This commit is contained in:
@@ -29,3 +29,11 @@ func (port *unixPort) setSpecialBaudrate(speed uint32) error {
|
||||
const kIOSSIOSPEED = 0x80045402
|
||||
return unix.IoctlSetPointerInt(port.handle, kIOSSIOSPEED, int(speed))
|
||||
}
|
||||
|
||||
func (port *unixPort) ResetInputBuffer() error {
|
||||
return unix.IoctlSetPointerInt(port.handle, ioctlTcflsh, unix.TCIFLUSH)
|
||||
}
|
||||
|
||||
func (port *unixPort) ResetOutputBuffer() error {
|
||||
return unix.IoctlSetPointerInt(port.handle, ioctlTcflsh, unix.TCOFLUSH)
|
||||
}
|
||||
|
||||
19
serial_resetbuf_linux_bsd.go
Normal file
19
serial_resetbuf_linux_bsd.go
Normal file
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// Copyright 2014-2021 Cristian Maglie. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
//
|
||||
|
||||
// +build linux freebsd openbsd
|
||||
|
||||
package serial
|
||||
|
||||
import "golang.org/x/sys/unix"
|
||||
|
||||
func (port *unixPort) ResetInputBuffer() error {
|
||||
return unix.IoctlSetInt(port.handle, ioctlTcflsh, unix.TCIFLUSH)
|
||||
}
|
||||
|
||||
func (port *unixPort) ResetOutputBuffer() error {
|
||||
return unix.IoctlSetInt(port.handle, ioctlTcflsh, unix.TCOFLUSH)
|
||||
}
|
||||
@@ -117,14 +117,6 @@ func (port *unixPort) Write(p []byte) (n int, err error) {
|
||||
return
|
||||
}
|
||||
|
||||
func (port *unixPort) ResetInputBuffer() error {
|
||||
return unix.IoctlSetInt(port.handle, ioctlTcflsh, unix.TCIFLUSH)
|
||||
}
|
||||
|
||||
func (port *unixPort) ResetOutputBuffer() error {
|
||||
return unix.IoctlSetInt(port.handle, ioctlTcflsh, unix.TCOFLUSH)
|
||||
}
|
||||
|
||||
func (port *unixPort) SetMode(mode *Mode) error {
|
||||
settings, err := port.getTermSettings()
|
||||
if err != nil {
|
||||
|
||||
Reference in New Issue
Block a user