Use pointers in windowsSerialPort methods

This commit is contained in:
Cristian Maglie
2014-12-30 20:45:25 +01:00
parent 14313e47fb
commit 3415c57d6a

View File

@@ -88,11 +88,11 @@ func GetPortsList() ([]string, error) {
return list, nil return list, nil
} }
func (port windowsSerialPort) Close() error { func (port *windowsSerialPort) Close() error {
return syscall.CloseHandle(port.Handle) return syscall.CloseHandle(port.Handle)
} }
func (port windowsSerialPort) Read(p []byte) (int, error) { func (port *windowsSerialPort) Read(p []byte) (int, error) {
var readed uint32 var readed uint32
params := &DCB{} params := &DCB{}
for { for {
@@ -115,7 +115,7 @@ func (port windowsSerialPort) Read(p []byte) (int, error) {
} }
} }
func (port windowsSerialPort) Write(p []byte) (int, error) { func (port *windowsSerialPort) Write(p []byte) (int, error) {
var writed uint32 var writed uint32
err := syscall.WriteFile(port.Handle, p, &writed, nil) err := syscall.WriteFile(port.Handle, p, &writed, nil)
return int(writed), err return int(writed), err
@@ -203,7 +203,7 @@ const (
TWOSTOPBITS = 2 TWOSTOPBITS = 2
) )
func (port windowsSerialPort) SetMode(mode *Mode) error { func (port *windowsSerialPort) SetMode(mode *Mode) error {
params := DCB{} params := DCB{}
if err := GetCommState(port.Handle, &params); err != nil { if err := GetCommState(port.Handle, &params); err != nil {
port.Close() port.Close()