commit | e2428b0ed1abc70d73ee1178757e3151a6d268b8 | [log] [tgz] |
---|---|---|
author | Reilly Grant <[email protected]> | Sat May 15 03:31:25 2021 |
committer | Chromium LUCI CQ <[email protected]> | Sat May 15 03:31:25 2021 |
tree | b618ce006f603abbbe08500eb7c5b870eee18303 | |
parent | 88c6524b47d778cc86440aac5f5ca34bf7586db1 [diff] [blame] |
usb: Use ReadOnlyBuffer to avoid copies in transferOut() This is an experiment to see how readable or unreadable it is to use the typemapped ReadOnlyBuffer struct instead of array<uint8> in order to avoid 2 unnecessary copies for each call to the WebUSB transferOut() function. Bug: 743121 Change-Id: Ic841092ebb992e00f2d68b1a197b25c637b6bd44 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2861448 Commit-Queue: Reilly Grant <[email protected]> Reviewed-by: danakj <[email protected]> Reviewed-by: Ken Rockot <[email protected]> Reviewed-by: Andrey Kosyakov <[email protected]> Reviewed-by: Yang Guo <[email protected]> Reviewed-by: Chris Mumford <[email protected]> Cr-Commit-Position: refs/heads/master@{#883253}
diff --git a/base/memory/ref_counted_memory.cc b/base/memory/ref_counted_memory.cc index 1af8512..09e84d3 100644 --- a/base/memory/ref_counted_memory.cc +++ b/base/memory/ref_counted_memory.cc
@@ -35,8 +35,10 @@ RefCountedBytes::RefCountedBytes() = default; RefCountedBytes::RefCountedBytes(const std::vector<unsigned char>& initializer) - : data_(initializer) { -} + : data_(initializer) {} + +RefCountedBytes::RefCountedBytes(base::span<const unsigned char> initializer) + : data_(initializer.begin(), initializer.end()) {} RefCountedBytes::RefCountedBytes(const unsigned char* p, size_t size) : data_(p, p + size) {}