New issue
Advanced search Search tips

Issue 885339 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Oct 29
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug-Regression



Sign in to add a comment

ARC BluetoothLeScanner scan returns devices that are no longer available

Reported by steven.l...@makewonder.com, Sep 18

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.2 Safari/605.1.15
Platform: 10895.56.0 (Official Build) beta-channel kevin

Steps to reproduce the problem:
1.  Install & run the attached android app
2. See a known device in the scan
3. Turn off the device
4. Wait a few seconds for another scan
The source for the app is available at https://github.com/playi/BleDebugScanner

What is the expected behavior?
The device is no longer reported in the scan

What went wrong?
The scan reports the device.

Did this work before? Yes 68

Chrome version: 69.0.3497.95  Channel: beta
OS Version: 69.0.3497.95
Flash Version: 31.0.0.108

Looks like this problem surfaced once the fix for https://bugs.chromium.org/p/chromium/issues/detail?id=853037 was merged.   Also, this problem is mentioned in comment #3 on another issue: https://bugs.chromium.org/p/chromium/issues/detail?id=880424#c3
 
BleScanner-debug.apk
1.1 MB Download
The issue also reproduces on Nordic's "nRF Connect" app https://play.google.com/store/apps/details?id=no.nordicsemi.android.mcp
This probably should be Components:	
Platform>Apps>ARC
Components: -Platform>DevTools Platform>Apps>ARC
Also present in beta 70.0.3538.22
This bug continues to occur in 70.0.3538.41
Still occurring in beta 70.0.3538.69
Still occurring in beta 71.0.3578.21
Project Member

Comment 8 by bugdroid1@chromium.org, Oct 29

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/66e2d1f03a2b705490bf30d8310f2b7a6bf62871

commit 66e2d1f03a2b705490bf30d8310f2b7a6bf62871
Author: Qiyu Hu <qiyuh@google.com>
Date: Mon Oct 29 23:00:08 2018

arc: bluetooth: Do not send cached devices

We should not send out cached devices in the first place.
Double bugs involve here:

At the beginning of human history:
We call SendCachedDevicesFound() whenever we start discovery.
However, SendDevice() doesn't really send cached devices,

until I fix it in crrev.com/c/1105559......

But the problem is, in the first place, cached (inactive) devices
are not supposed to be reported in a discovery session.

Also note that DeviceFound() is completely independent from
LEDeviceFound(). If bluetooth service doesn't give an implementation for
DeviceFound() (which is not likely), it could still provide an
implementation for LEDeviceFound(), and LEDeviceFound() should still be
called in this case.

BUG= chromium:885339 
TEST=manual test

Change-Id: Id97acd40fad19e4ee5a3ed64792a0598dce46ea7
Reviewed-on: https://chromium-review.googlesource.com/c/1303253
Reviewed-by: Yusuke Sato <yusukes@chromium.org>
Commit-Queue: Qiyu Hu <qiyuh@google.com>
Cr-Commit-Position: refs/heads/master@{#603676}
[modify] https://crrev.com/66e2d1f03a2b705490bf30d8310f2b7a6bf62871/chrome/browser/chromeos/arc/bluetooth/arc_bluetooth_bridge.cc
[modify] https://crrev.com/66e2d1f03a2b705490bf30d8310f2b7a6bf62871/chrome/browser/chromeos/arc/bluetooth/arc_bluetooth_bridge.h

Status: Fixed (was: Unconfirmed)
Cc: qiyuh@chromium.org viswa.karala@chromium.org pbomm...@chromium.org
 Issue 880530  has been merged into this issue.
Still present in 71.0.3578.27.  When might we see this fixed in a build?
Labels: Merge-Request-71
Project Member

Comment 13 by sheriffbot@chromium.org, Nov 12

Labels: -Merge-Request-71 Hotlist-Merge-Review Merge-Review-71
This bug requires manual review: M71 has already been promoted to the beta branch, so this requires manual review
Please contact the milestone owner if you have questions.
Owners: benmason@(Android), kariahda@(iOS), kbleicher@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Review-71 Merge-Approved-71
Merge Approved for ChromeOS M71
Project Member

Comment 15 by bugdroid1@chromium.org, Nov 15

Labels: -merge-approved-71 merge-merged-3578
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1a4186d58b2b67569ab7641200f0676c7805351c

commit 1a4186d58b2b67569ab7641200f0676c7805351c
Author: Qiyu Hu <qiyuh@google.com>
Date: Thu Nov 15 19:46:39 2018

arc: bluetooth: Do not send cached devices

We should not send out cached devices in the first place.
Double bugs involve here:

At the beginning of human history:
We call SendCachedDevicesFound() whenever we start discovery.
However, SendDevice() doesn't really send cached devices,

until I fix it in crrev.com/c/1105559......

But the problem is, in the first place, cached (inactive) devices
are not supposed to be reported in a discovery session.

Also note that DeviceFound() is completely independent from
LEDeviceFound(). If bluetooth service doesn't give an implementation for
DeviceFound() (which is not likely), it could still provide an
implementation for LEDeviceFound(), and LEDeviceFound() should still be
called in this case.

BUG= chromium:885339 
TEST=manual test
TBR=qiyuh@google.com

(cherry picked from commit 66e2d1f03a2b705490bf30d8310f2b7a6bf62871)

Change-Id: Id97acd40fad19e4ee5a3ed64792a0598dce46ea7
Reviewed-on: https://chromium-review.googlesource.com/c/1303253
Reviewed-by: Yusuke Sato <yusukes@chromium.org>
Commit-Queue: Qiyu Hu <qiyuh@google.com>
Cr-Original-Commit-Position: refs/heads/master@{#603676}
Reviewed-on: https://chromium-review.googlesource.com/c/1338300
Reviewed-by: Sonny Sasaka <sonnysasaka@chromium.org>
Cr-Commit-Position: refs/branch-heads/3578@{#701}
Cr-Branched-From: 4226ddf99103e493d7afb23a4c7902ee496108b6-refs/heads/master@{#599034}
[modify] https://crrev.com/1a4186d58b2b67569ab7641200f0676c7805351c/chrome/browser/chromeos/arc/bluetooth/arc_bluetooth_bridge.cc
[modify] https://crrev.com/1a4186d58b2b67569ab7641200f0676c7805351c/chrome/browser/chromeos/arc/bluetooth/arc_bluetooth_bridge.h

Labels: Merge-Merged-71-3578
The following revision refers to this bug: 
https://chromium.googlesource.com/chromium/src.git/+/1a4186d58b2b67569ab7641200f0676c7805351c

Commit: 1a4186d58b2b67569ab7641200f0676c7805351c
Author: qiyuh@google.com
Commiter: sonnysasaka@chromium.org
Date: 2018-11-15 19:46:39 +0000 UTC

arc: bluetooth: Do not send cached devices

We should not send out cached devices in the first place.
Double bugs involve here:

At the beginning of human history:
We call SendCachedDevicesFound() whenever we start discovery.
However, SendDevice() doesn't really send cached devices,

until I fix it in crrev.com/c/1105559......

But the problem is, in the first place, cached (inactive) devices
are not supposed to be reported in a discovery session.

Also note that DeviceFound() is completely independent from
LEDeviceFound(). If bluetooth service doesn't give an implementation for
DeviceFound() (which is not likely), it could still provide an
implementation for LEDeviceFound(), and LEDeviceFound() should still be
called in this case.

BUG= chromium:885339 
TEST=manual test
TBR=qiyuh@google.com

(cherry picked from commit 66e2d1f03a2b705490bf30d8310f2b7a6bf62871)

Change-Id: Id97acd40fad19e4ee5a3ed64792a0598dce46ea7
Reviewed-on: https://chromium-review.googlesource.com/c/1303253
Reviewed-by: Yusuke Sato <yusukes@chromium.org>
Commit-Queue: Qiyu Hu <qiyuh@google.com>
Cr-Original-Commit-Position: refs/heads/master@{#603676}
Reviewed-on: https://chromium-review.googlesource.com/c/1338300
Reviewed-by: Sonny Sasaka <sonnysasaka@chromium.org>
Cr-Commit-Position: refs/branch-heads/3578@{#701}
Cr-Branched-From: 4226ddf99103e493d7afb23a4c7902ee496108b6-refs/heads/master@{#599034}
This is still occurring in 71.0.3578.49
This is still present in 72.0.3609.3
Owner: qiyuh@chromium.org

Sign in to add a comment