discovery/ble: minor clean up
Change-Id: Icbcc46cb27c1f53a7ac466f5b37c958b2ece86a2
diff --git a/lib/discovery/encoding.go b/lib/discovery/encoding.go
index 54aac5f..d5ba037 100644
--- a/lib/discovery/encoding.go
+++ b/lib/discovery/encoding.go
@@ -9,6 +9,7 @@
"compress/flate"
"encoding/binary"
"errors"
+ "fmt"
"io"
"io/ioutil"
@@ -63,6 +64,9 @@
if err != nil {
return nil, err
}
+ if n < 0 {
+ return nil, fmt.Errorf("invalid length %d", n)
+ }
p := e.buf.Next(n)
if len(p) < n {
return nil, io.EOF
diff --git a/lib/discovery/plugins/ble/encoding.go b/lib/discovery/plugins/ble/encoding.go
index 47c029f..eb9f3fa 100644
--- a/lib/discovery/plugins/ble/encoding.go
+++ b/lib/discovery/plugins/ble/encoding.go
@@ -95,7 +95,7 @@
buf.Write(idiscovery.EncodeTimestamp(adinfo.TimestampNs))
if len(adinfo.Ad.Attachments) == 0 {
- buf.WriteBytes(idiscovery.PackAddresses(nil)) // No DirAddrs necessary
+ buf.WriteBytes(nil) // No DirAddrs necessary
buf.WriteInt(int(idiscovery.AdReady))
} else {
buf.WriteBytes(idiscovery.PackAddresses(adinfo.DirAddrs))
diff --git a/lib/discovery/plugins/ble/scanner.go b/lib/discovery/plugins/ble/scanner.go
index e9eb10f..bf0bd43 100644
--- a/lib/discovery/plugins/ble/scanner.go
+++ b/lib/discovery/plugins/ble/scanner.go
@@ -95,8 +95,8 @@
stopScan := func() {
if isScanning {
s.driver.StopScan()
+ isScanning = false
}
- isScanning = false
}
defer stopScan()