New issue
Advanced search Search tips

Issue 864676 link

Starred by 1 user

Issue metadata

Status: Untriaged
Owner: ----
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

[base] Add base::span support to //base Serialization APIs

Project Member Reported by jdoerrie@chromium.org, Jul 17

Issue description

This change tracks adding base::span support to //base Serialization APIs like base::Pickle and base::WriteFile(). Currently these APIs take a pair of data pointers + length as parameters. In order to provide more flexibility and increase robustness these APIs should be augmented to take also base::spans as arguments. Once this is done, ideally all callsites making use of the (pointer, length) API will migrate to the base::span API and the legacy APIs can be removed.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jul 20

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

commit 9970f20e1b3dd533c248a79f8d705893c802ca98
Author: jdoerrie <jdoerrie@chromium.org>
Date: Fri Jul 20 21:41:18 2018

[base] Change Value::BlobStorage to std::vector<uint8_t>

This change updates Value::BlobStorage to be a std::vector<uint8_t>
instead of std::vector<char>. In order to minimize code-breakage, a
converting constructor is added.

TBR=fukino@chromium.org, boliu@chromium.org, rockot@chromium.org, chcunningham@chromium.org, bbudge@chromium.org

Bug: 646113, 864676
Change-Id: Ifbb0ecd116a95135ac7218d2accc8ac841e59db9
Reviewed-on: https://chromium-review.googlesource.com/1137819
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Devlin <rdevlin.cronin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576996}
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/base/values.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/base/values.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/base/values_unittest.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/chromeos/extensions/wallpaper_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/chromeos/extensions/wallpaper_function_base.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/chromeos/extensions/wallpaper_function_base.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/chromeos/extensions/wallpaper_private_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/chromeos/extensions/wallpaper_private_api.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/chromeos/file_system_provider/operations/write_file_unittest.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/braille_display_private/braille_controller.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/braille_display_private/braille_controller_brlapi.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/braille_display_private/braille_controller_brlapi.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/braille_display_private/stub_braille_controller.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/braille_display_private/stub_braille_controller.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/certificate_provider/certificate_provider_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/cryptotoken_private/cryptotoken_private_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/easy_unlock_private/easy_unlock_private_connection_manager.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/enterprise_platform_keys/enterprise_platform_keys_api_unittest.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/notifications/notifications_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/platform_keys/platform_keys_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/api/platform_keys/verify_trust_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/chrome/browser/extensions/extension_action.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/content/common/android/gin_java_bridge_value.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/bluetooth_low_energy/bluetooth_low_energy_event_router.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/bluetooth_socket/bluetooth_socket_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/clipboard/clipboard_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/declarative/declarative_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/lock_screen_data/lock_screen_data_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/media_perception_private/conversion_utils.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/serial/serial_connection.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/serial/serial_connection.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/serial/serial_event_dispatcher.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/serial/serial_event_dispatcher.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/socket/socket_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/sockets_tcp/sockets_tcp_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/sockets_udp/sockets_udp_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/vpn_provider/vpn_provider_api.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/vpn_provider/vpn_service.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/webcam_private/visca_webcam.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/webcam_private/visca_webcam.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/extensions/browser/api/webcam_private/visca_webcam_unittest.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/ipc/ipc_message_utils.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/media/base/video_frame_metadata.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/mojo/public/cpp/base/values_mojom_traits.h
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/ppapi/shared_impl/private/ppb_x509_certificate_private_shared.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/tools/json_schema_compiler/cc_generator.py
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/tools/json_schema_compiler/cpp_type_generator.py
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/tools/json_schema_compiler/util.cc
[modify] https://crrev.com/9970f20e1b3dd533c248a79f8d705893c802ca98/tools/json_schema_compiler/util.h

Status: Untriaged (was: Available)
Available, but no owner or component? Please find a component, as no one will ever find this without one.

Sign in to add a comment