New issue
Advanced search Search tips

Issue 608538 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner: ----
Closed: Nov 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Feature

Blocked on:
issue 654670

Blocking:
issue 436283



Sign in to add a comment

bluetooth: Require that the specific frame is connected for operations to succeed.

Project Member Reported by jyasskin@chromium.org, May 2 2016

Issue description

Comment 1 by scheib@chromium.org, May 11 2016

Blocking: 436283
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 29 2016

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

commit ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792
Author: ortuno <ortuno@chromium.org>
Date: Fri Jul 29 19:35:30 2016

bluetooth: Reject getPrimaryService(s) if frame is not connected

First of three patches to reject promises if the frame is not connected
or the frame disconnected while the promise was not fulfilled.

Implements:

1. The ActiveAlgorithm set[1] as m_activeAlgorithms in BluetoothRemoteGATTServer
2. gattServer-connection-checking wrapper[2] as GetPrimaryServicesCallback in
   BluetoothRemoteGattServer.cpp
3. Connection check of query bluetooth cache[3] in getPrimaryServicesImpl.

[1] https://webbluetoothcg.github.io/web-bluetooth/#dom-bluetoothremotegattserver-activealgorithms-slot
[2] https://webbluetoothcg.github.io/web-bluetooth/#connection-checking-wrapper
[3] https://webbluetoothcg.github.io/web-bluetooth/#query-the-bluetooth-cache

BUG= 608538 

Review-Url: https://codereview.chromium.org/2183903002
Cr-Commit-Position: refs/heads/master@{#408729}

[modify] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc
[modify] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-before.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-reconnects-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/disconnect-called-before.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/disconnect-called-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/disconnected-device.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/reconnect-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-before-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-before.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-reconnects-during-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-reconnects-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-before-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-before.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-during-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-during.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnected-device-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnected-device.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/reconnect-during-with-uuid.html
[add] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/reconnect-during.html
[modify] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/Source/modules/bluetooth/BluetoothDevice.cpp
[modify] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTServer.cpp
[modify] https://crrev.com/ababc28cc3a0b4cc1f842548d1c5c31fdd4d2792/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTServer.h

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 10 2016

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

commit 3aecaf01516c28df06c0b29881678a4548cbdfcf
Author: ortuno <ortuno@chromium.org>
Date: Mon Oct 10 03:03:25 2016

bluetooth: Require context is connected for getCharacteristic(s)

Promises reject if the frame is not connected or if the frame disconnected
during the getCharacteristic(s) operation.

BUG= 608538 

Review-Url: https://codereview.chromium.org/2387293008
Cr-Commit-Position: refs/heads/master@{#424113}

[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/device-disconnects-before.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/device-disconnects-during.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/disconnect-called-before.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/disconnect-called-during.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/reconnect-during.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-before-with-uuid.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-before.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-during-with-uuid.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-during.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/disconnect-called-before-with-uuid.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/disconnect-called-before.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/disconnect-called-during-with-uuid.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/disconnect-called-during.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/reconnect-during-with-uuid.html
[add] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/reconnect-during.html
[modify] https://crrev.com/3aecaf01516c28df06c0b29881678a4548cbdfcf/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTService.cpp

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 11 2016

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

commit 890c0e885e07c0a1843df8f9f38b10eb56a83867
Author: ortuno <ortuno@chromium.org>
Date: Tue Oct 11 03:20:41 2016

bluetooth: Reject with NetworkError when disconnected during getPrimaryService(s)

https://webbluetoothcg.github.io/web-bluetooth/#connection-checking-wrapper says
to replace the real error with a NetworkError if we've disconnected during the
operation. We get there through the
https://webbluetoothcg.github.io/web-bluetooth/#query-the-bluetooth-cache step
of https://webbluetoothcg.github.io/web-bluetooth/#getgattchildren.

BUG= 608538 

Review-Url: https://codereview.chromium.org/2400943002
Cr-Commit-Position: refs/heads/master@{#424360}

[add] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-during-error.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-reconnects-during-error.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-reconnects-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/disconnect-called-during-error.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/disconnect-called-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/reconnect-during-error.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/reconnect-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-error-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-success-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-reconnects-during-error-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-reconnects-during-success-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-reconnects-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-during-error-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-during-success-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/disconnect-called-during-success.html
[copy] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/reconnect-during-error-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/reconnect-during-success-with-uuid.html
[rename] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/reconnect-during-success.html
[modify] https://crrev.com/890c0e885e07c0a1843df8f9f38b10eb56a83867/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTServer.cpp

Comment 5 by ortuno@chromium.org, Oct 11 2016

Blockedon: 654670
Project Member

Comment 6 by bugdroid1@chromium.org, Oct 24 2016

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

commit 0d1db684a6570d46b61fa141bc37ac95f3a6876a
Author: ortuno <ortuno@chromium.org>
Date: Mon Oct 24 01:50:25 2016

bluetooth: Require frame to be connected for characteristic.readValue to succeed

Rejects characteristic.readValue if the frame is not connected or if
the frame disconnects during the operation.

The new adapter has a Health Thermometer service with a measurement interval
characteristic. We use this characteristic because it the only standard
characteristic that supports Read, Write and Notify.

Reconnection tests in follow up patch: http://crrev.com/2438963002

BUG= 608538 

Review-Url: https://codereview.chromium.org/2443473003
Cr-Commit-Position: refs/heads/master@{#427007}

[modify] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc
[modify] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-disconnects-before.html
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-disconnects-during-error.html
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-disconnects-during-success.html
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-disconnect-called-before.html
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-disconnect-called-during-error.html
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-disconnect-called-during-success.html
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-before.js
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-error.js
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-before.js
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-error.js
[add] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-success.js
[modify] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.cpp
[modify] https://crrev.com/0d1db684a6570d46b61fa141bc37ac95f3a6876a/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h

Project Member

Comment 7 by bugdroid1@chromium.org, Oct 24 2016

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

commit d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd
Author: ortuno <ortuno@chromium.org>
Date: Mon Oct 24 02:02:41 2016

bluetooth: Add tests for when frame reconnects during readValue

Follow up patch that adds a new fake adapter that finishes a gatt operation
after a connect is called and adds tests that uses it.

Previous patch: http://crrev.com/2443473003

BUG= 608538 

Review-Url: https://codereview.chromium.org/2438963002
Cr-Commit-Position: refs/heads/master@{#427009}

[modify] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc
[modify] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h
[modify] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/device/bluetooth/test/mock_bluetooth_device.cc
[modify] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/device/bluetooth/test/mock_bluetooth_device.h
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-reconnects-during-error.html
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-reconnects-during-success.html
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-reconnect-during-error.html
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-reconnect-during-success.html
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-reconnects-during-error.js
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-reconnects-during-success.js
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-reconnect-during-error.js
[add] https://crrev.com/d0873b1b6847cbec6aeb730ad8a2ee7f15c7d3bd/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-reconnect-during-success.js

Project Member

Comment 8 by bugdroid1@chromium.org, Oct 26 2016

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

commit f97d6a29e488d8a57764e1a45c054ef3dc2d421e
Author: ortuno <ortuno@chromium.org>
Date: Wed Oct 26 05:03:28 2016

bluetooth: Introduce helper function for requesting a disconnection

Introduces a new helper function that will contain
"requestDisconnection.writeValue(...)" wrapped inside a
assert_promise_rejects_with_message.

We need to wrap the disconnection request because writeValue will soon
require a frame to be connected for operations to succeed.

BUG= 608538 

Review-Url: https://codereview.chromium.org/2441313002
Cr-Commit-Position: refs/heads/master@{#427594}

[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/connect/connect-disconnected-connect.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/gattserverdisconnected-event/disconnected.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/gattserverdisconnected-event/disconnected_gc.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/gattserverdisconnected-event/one-event-per-disconnection.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/gattserverdisconnected-event/reconnect-during-disconnected-event.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/device-disconnects-before.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getCharacteristic/device-disconnects-during.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-before-with-uuid.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-before.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-during-with-uuid.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getCharacteristics/device-disconnects-during.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-during-error.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-during-success.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/gen-service-device-disconnects-before.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-error-with-uuid.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-success-with-uuid.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/device-disconnects-during-success.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/gen-service-device-disconnects-before-with-uuid.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/getPrimaryServices/gen-service-device-disconnects-before.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-disconnects-before.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-disconnects-during-error.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-disconnects-during-success.html
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-before.js
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-error.js
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/bluetooth/script-tests/service-device-disconnects-before.js
[modify] https://crrev.com/f97d6a29e488d8a57764e1a45c054ef3dc2d421e/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js

Project Member

Comment 9 by bugdroid1@chromium.org, Oct 31 2016

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

commit d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42
Author: ortuno <ortuno@chromium.org>
Date: Mon Oct 31 00:41:25 2016

bluetooth: Require frame to be connected for writValue to succeed.

If frame is not connected or disconnects during a writeValue request we
reject the writeValue promise with NetworkError.

BUG= 608538 

Review-Url: https://codereview.chromium.org/2445633002
Cr-Commit-Position: refs/heads/master@{#428637}

[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-reconnects-during-error.html
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-device-reconnects-during-success.html
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-reconnect-during-error.html
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/readValue/gen-gatt-op-reconnect-during-success.html
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-before.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-error.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-reconnects-during-error.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-reconnects-during-success.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-before.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-error.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-success.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-reconnect-during-error.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-reconnect-during-success.js
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-device-disconnects-before.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-device-disconnects-during-error.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-device-disconnects-during-success.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-device-reconnects-during-error.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-device-reconnects-during-success.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-disconnect-called-before.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-disconnect-called-during-error.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-disconnect-called-during-success.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-reconnect-during-error.html
[add] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/bluetooth/writeValue/gen-gatt-op-reconnect-during-success.html
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/LayoutTests/resources/bluetooth/bluetooth-helpers.js
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.cpp
[modify] https://crrev.com/d7ea1be86b592dbbfa1fe83bfcc5709a1b526b42/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h

Project Member

Comment 10 by bugdroid1@chromium.org, Oct 31 2016

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

commit 875f017e58543a5fa0f03e56478d86072bf26bc2
Author: ortuno <ortuno@chromium.org>
Date: Mon Oct 31 03:45:53 2016

bluetooth: Require frame to be connected for startNotifications to succeed.

If a frame is not connected or disconnects during a startNotifications
request we reject the startNotifications promise with NetworkError.

BUG= 608538 

Review-Url: https://codereview.chromium.org/2447593002
Cr-Commit-Position: refs/heads/master@{#428651}

[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-before.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-error.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-reconnects-during-error.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-reconnects-during-success.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-before.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-error.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-success.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-reconnect-during-error.js
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-reconnect-during-success.js
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-device-disconnects-before.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-device-disconnects-during-error.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-device-disconnects-during-success.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-device-reconnects-during-error.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-device-reconnects-during-success.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-disconnect-called-before.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-disconnect-called-during-error.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-disconnect-called-during-success.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-reconnect-during-error.html
[add] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/LayoutTests/bluetooth/startNotifications/gen-gatt-op-reconnect-during-success.html
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.cpp
[modify] https://crrev.com/875f017e58543a5fa0f03e56478d86072bf26bc2/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.h

Project Member

Comment 11 by bugdroid1@chromium.org, Oct 31 2016

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

commit 7a703abc1287ff478b1bfe15bf68af7b48331740
Author: ortuno <ortuno@chromium.org>
Date: Mon Oct 31 05:05:52 2016

bluetooth: Require frame to be connected for stopNotifications to succeed.

If a frame is not connected or disconnects during a stopNotifications
request we reject the promise with NetworkError.

Also adds a new adapter for delayed StopNotifySession callbacks.

BUG= 608538 

Review-Url: https://codereview.chromium.org/2443063002
Cr-Commit-Position: refs/heads/master@{#428655}

[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.cc
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider.h
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-before.js
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-before.js
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-disconnect-called-during-success.js
[add] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/stopNotifications/device-reconnects-during-success.html
[add] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/stopNotifications/gen-gatt-op-device-disconnects-before.html
[add] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/stopNotifications/gen-gatt-op-device-disconnects-during-success.html
[add] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/stopNotifications/gen-gatt-op-disconnect-called-before.html
[add] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/stopNotifications/gen-gatt-op-disconnect-called-during-success.html
[add] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/LayoutTests/bluetooth/stopNotifications/reconnect-during-success.html
[modify] https://crrev.com/7a703abc1287ff478b1bfe15bf68af7b48331740/third_party/WebKit/Source/modules/bluetooth/BluetoothRemoteGATTCharacteristic.cpp

Status: Fixed (was: Available)

Sign in to add a comment