Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(685)

Unified Diff: third_party/WebKit/Source/modules/webusb/USBDevice.cpp

Issue 1916283003: [K6] Replace bind() + GCed pointers with retainedRef() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@Kuroneko_5c
Patch Set: Rebase Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/modules/webusb/USBDevice.cpp
diff --git a/third_party/WebKit/Source/modules/webusb/USBDevice.cpp b/third_party/WebKit/Source/modules/webusb/USBDevice.cpp
index b06aa07706fb1d4cd8379fa26f054cf35dd5d49a..0c34275ac052ef9993988b07e7fa9e0a8367f3d6 100644
--- a/third_party/WebKit/Source/modules/webusb/USBDevice.cpp
+++ b/third_party/WebKit/Source/modules/webusb/USBDevice.cpp
@@ -149,7 +149,7 @@ ScriptPromise USBDevice::open(ScriptState* scriptState)
} else {
m_deviceStateChangeInProgress = true;
m_deviceRequests.add(resolver);
- m_device->Open(createBaseCallback(bind<usb::OpenDeviceError>(&USBDevice::asyncOpen, this, resolver)));
+ m_device->Open(createBaseCallback(bind<usb::OpenDeviceError>(&USBDevice::asyncOpen, retainedRef(this), retainedRef(resolver))));
}
}
return promise;
@@ -165,7 +165,7 @@ ScriptPromise USBDevice::close(ScriptState* scriptState)
} else {
m_deviceStateChangeInProgress = true;
m_deviceRequests.add(resolver);
- m_device->Close(createBaseCallback(bind(&USBDevice::asyncClose, this, resolver)));
+ m_device->Close(createBaseCallback(bind(&USBDevice::asyncClose, retainedRef(this), retainedRef(resolver))));
}
}
return promise;
@@ -187,7 +187,7 @@ ScriptPromise USBDevice::selectConfiguration(ScriptState* scriptState, uint8_t c
} else {
m_deviceStateChangeInProgress = true;
m_deviceRequests.add(resolver);
- m_device->SetConfiguration(configurationValue, createBaseCallback(bind<bool>(&USBDevice::asyncSelectConfiguration, this, configurationIndex, resolver)));
+ m_device->SetConfiguration(configurationValue, createBaseCallback(bind<bool>(&USBDevice::asyncSelectConfiguration, retainedRef(this), configurationIndex, retainedRef(resolver))));
}
}
}
@@ -209,7 +209,7 @@ ScriptPromise USBDevice::claimInterface(ScriptState* scriptState, uint8_t interf
} else {
m_interfaceStateChangeInProgress.set(interfaceIndex);
m_deviceRequests.add(resolver);
- m_device->ClaimInterface(interfaceNumber, createBaseCallback(bind<bool>(&USBDevice::asyncClaimInterface, this, interfaceIndex, resolver)));
+ m_device->ClaimInterface(interfaceNumber, createBaseCallback(bind<bool>(&USBDevice::asyncClaimInterface, retainedRef(this), interfaceIndex, retainedRef(resolver))));
}
}
return promise;
@@ -233,7 +233,7 @@ ScriptPromise USBDevice::releaseInterface(ScriptState* scriptState, uint8_t inte
setEndpointsForInterface(interfaceIndex, false);
m_interfaceStateChangeInProgress.set(interfaceIndex);
m_deviceRequests.add(resolver);
- m_device->ReleaseInterface(interfaceNumber, createBaseCallback(bind<bool>(&USBDevice::asyncReleaseInterface, this, interfaceIndex, resolver)));
+ m_device->ReleaseInterface(interfaceNumber, createBaseCallback(bind<bool>(&USBDevice::asyncReleaseInterface, retainedRef(this), interfaceIndex, retainedRef(resolver))));
}
}
return promise;
@@ -256,7 +256,7 @@ ScriptPromise USBDevice::selectAlternateInterface(ScriptState* scriptState, uint
setEndpointsForInterface(interfaceIndex, false);
m_interfaceStateChangeInProgress.set(interfaceIndex);
m_deviceRequests.add(resolver);
- m_device->SetInterfaceAlternateSetting(interfaceNumber, alternateSetting, createBaseCallback(bind<bool>(&USBDevice::asyncSelectAlternateInterface, this, interfaceNumber, alternateSetting, resolver)));
+ m_device->SetInterfaceAlternateSetting(interfaceNumber, alternateSetting, createBaseCallback(bind<bool>(&USBDevice::asyncSelectAlternateInterface, retainedRef(this), interfaceNumber, alternateSetting, retainedRef(resolver))));
}
}
return promise;
@@ -270,7 +270,7 @@ ScriptPromise USBDevice::controlTransferIn(ScriptState* scriptState, const USBCo
auto parameters = convertControlTransferParameters(setup, resolver);
if (parameters) {
m_deviceRequests.add(resolver);
- m_device->ControlTransferIn(std::move(parameters), length, 0, createBaseCallback(bind<usb::TransferStatus, mojo::WTFArray<uint8_t>>(&USBDevice::asyncControlTransferIn, this, resolver)));
+ m_device->ControlTransferIn(std::move(parameters), length, 0, createBaseCallback(bind<usb::TransferStatus, mojo::WTFArray<uint8_t>>(&USBDevice::asyncControlTransferIn, retainedRef(this), retainedRef(resolver))));
}
}
return promise;
@@ -284,7 +284,7 @@ ScriptPromise USBDevice::controlTransferOut(ScriptState* scriptState, const USBC
auto parameters = convertControlTransferParameters(setup, resolver);
if (parameters) {
m_deviceRequests.add(resolver);
- m_device->ControlTransferOut(std::move(parameters), mojo::WTFArray<uint8_t>(), 0, createBaseCallback(bind<usb::TransferStatus>(&USBDevice::asyncControlTransferOut, this, 0, resolver)));
+ m_device->ControlTransferOut(std::move(parameters), mojo::WTFArray<uint8_t>(), 0, createBaseCallback(bind<usb::TransferStatus>(&USBDevice::asyncControlTransferOut, retainedRef(this), 0, retainedRef(resolver))));
}
}
return promise;
@@ -300,7 +300,7 @@ ScriptPromise USBDevice::controlTransferOut(ScriptState* scriptState, const USBC
mojo::WTFArray<uint8_t> buffer = convertBufferSource(data);
unsigned transferLength = buffer.size();
m_deviceRequests.add(resolver);
- m_device->ControlTransferOut(std::move(parameters), std::move(buffer), 0, createBaseCallback(bind<usb::TransferStatus>(&USBDevice::asyncControlTransferOut, this, transferLength, resolver)));
+ m_device->ControlTransferOut(std::move(parameters), std::move(buffer), 0, createBaseCallback(bind<usb::TransferStatus>(&USBDevice::asyncControlTransferOut, retainedRef(this), transferLength, retainedRef(resolver))));
}
}
return promise;
@@ -312,7 +312,7 @@ ScriptPromise USBDevice::clearHalt(ScriptState* scriptState, String direction, u
ScriptPromise promise = resolver->promise();
if (ensureEndpointAvailable(direction == "in", endpointNumber, resolver)) {
m_deviceRequests.add(resolver);
- m_device->ClearHalt(endpointNumber, createBaseCallback(bind<bool>(&USBDevice::asyncClearHalt, this, resolver)));
+ m_device->ClearHalt(endpointNumber, createBaseCallback(bind<bool>(&USBDevice::asyncClearHalt, retainedRef(this), retainedRef(resolver))));
}
return promise;
}
@@ -323,7 +323,7 @@ ScriptPromise USBDevice::transferIn(ScriptState* scriptState, uint8_t endpointNu
ScriptPromise promise = resolver->promise();
if (ensureEndpointAvailable(true /* in */, endpointNumber, resolver)) {
m_deviceRequests.add(resolver);
- m_device->GenericTransferIn(endpointNumber, length, 0, createBaseCallback(bind<usb::TransferStatus, mojo::WTFArray<uint8_t>>(&USBDevice::asyncTransferIn, this, resolver)));
+ m_device->GenericTransferIn(endpointNumber, length, 0, createBaseCallback(bind<usb::TransferStatus, mojo::WTFArray<uint8_t>>(&USBDevice::asyncTransferIn, retainedRef(this), retainedRef(resolver))));
}
return promise;
}
@@ -336,7 +336,7 @@ ScriptPromise USBDevice::transferOut(ScriptState* scriptState, uint8_t endpointN
mojo::WTFArray<uint8_t> buffer = convertBufferSource(data);
unsigned transferLength = buffer.size();
m_deviceRequests.add(resolver);
- m_device->GenericTransferOut(endpointNumber, std::move(buffer), 0, createBaseCallback(bind<usb::TransferStatus>(&USBDevice::asyncTransferOut, this, transferLength, resolver)));
+ m_device->GenericTransferOut(endpointNumber, std::move(buffer), 0, createBaseCallback(bind<usb::TransferStatus>(&USBDevice::asyncTransferOut, retainedRef(this), transferLength, retainedRef(resolver))));
}
return promise;
}
@@ -347,7 +347,7 @@ ScriptPromise USBDevice::isochronousTransferIn(ScriptState* scriptState, uint8_t
ScriptPromise promise = resolver->promise();
if (ensureEndpointAvailable(true /* in */, endpointNumber, resolver)) {
m_deviceRequests.add(resolver);
- m_device->IsochronousTransferIn(endpointNumber, mojo::WTFArray<uint32_t>(std::move(packetLengths)), 0, createBaseCallback(bind<mojo::WTFArray<uint8_t>, mojo::WTFArray<usb::IsochronousPacketPtr>>(&USBDevice::asyncIsochronousTransferIn, this, resolver)));
+ m_device->IsochronousTransferIn(endpointNumber, mojo::WTFArray<uint32_t>(std::move(packetLengths)), 0, createBaseCallback(bind<mojo::WTFArray<uint8_t>, mojo::WTFArray<usb::IsochronousPacketPtr>>(&USBDevice::asyncIsochronousTransferIn, retainedRef(this), retainedRef(resolver))));
}
return promise;
}
@@ -358,7 +358,7 @@ ScriptPromise USBDevice::isochronousTransferOut(ScriptState* scriptState, uint8_
ScriptPromise promise = resolver->promise();
if (ensureEndpointAvailable(false /* out */, endpointNumber, resolver)) {
m_deviceRequests.add(resolver);
- m_device->IsochronousTransferOut(endpointNumber, convertBufferSource(data), mojo::WTFArray<uint32_t>(std::move(packetLengths)), 0, createBaseCallback(bind<mojo::WTFArray<usb::IsochronousPacketPtr>>(&USBDevice::asyncIsochronousTransferOut, this, resolver)));
+ m_device->IsochronousTransferOut(endpointNumber, convertBufferSource(data), mojo::WTFArray<uint32_t>(std::move(packetLengths)), 0, createBaseCallback(bind<mojo::WTFArray<usb::IsochronousPacketPtr>>(&USBDevice::asyncIsochronousTransferOut, retainedRef(this), retainedRef(resolver))));
}
return promise;
}
@@ -372,7 +372,7 @@ ScriptPromise USBDevice::reset(ScriptState* scriptState)
resolver->reject(DOMException::create(InvalidStateError, kOpenRequired));
} else {
m_deviceRequests.add(resolver);
- m_device->Reset(createBaseCallback(bind<bool>(&USBDevice::asyncReset, this, resolver)));
+ m_device->Reset(createBaseCallback(bind<bool>(&USBDevice::asyncReset, retainedRef(this), retainedRef(resolver))));
}
}
return promise;
« no previous file with comments | « third_party/WebKit/Source/modules/webusb/USB.cpp ('k') | third_party/WebKit/Source/modules/worklet/Worklet.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698