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

Issue 2000803003: Use std::unique_ptr for base::DictionaryValue and base::ListValue's internal store. (Closed)

Created:
4 years, 7 months ago by dcheng
Modified:
4 years, 7 months ago
Reviewers:
danakj, kenrb, stevenjb, brettw
CC:
chromium-reviews, tracing+reviews_chromium.org, wfh+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Use std::unique_ptr for base::DictionaryValue and base::ListValue's internal store. BUG=581865 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel R=brettw@chromium.org,danakj@chromium.org TBR=kenrb@chromium.org,stevenjb@chromium.org Committed: https://crrev.com/cb60e7032d871c4f6a7d03de41c8a81b9c234089 Cr-Commit-Position: refs/heads/master@{#395938}

Patch Set 1 #

Total comments: 12

Patch Set 2 : Fix double delete #

Patch Set 3 : address comments except iterator subclass #

Patch Set 4 : meh #

Total comments: 2

Patch Set 5 : Fix various builds. #

Total comments: 19

Patch Set 6 : review + build fixes #

Patch Set 7 : Fix copy-pasted code in chromecast. #

Patch Set 8 : . #

Patch Set 9 : More fixes #

Unified diffs Side-by-side diffs Delta from patch set Stats (+265 lines, -349 lines) Patch
M base/json/json_writer.cc View 1 2 3 1 chunk +1 line, -3 lines 0 comments Download
M base/trace_event/trace_event_argument.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M base/trace_event/trace_event_memory_overhead.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M base/values.h View 1 2 3 6 chunks +7 lines, -8 lines 0 comments Download
M base/values.cc View 1 2 3 4 5 15 chunks +39 lines, -79 lines 0 comments Download
M cc/test/layer_tree_json_parser.cc View 1 2 3 4 chunks +8 lines, -9 lines 0 comments Download
M chrome/browser/banners/app_banner_settings_helper.cc View 1 2 3 2 chunks +2 lines, -3 lines 0 comments Download
M chrome/browser/chromeos/arc/arc_policy_bridge.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/login/ui/webui_login_view.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/platform_keys/key_permissions.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/devtools/devtools_embedder_message_dispatcher.cc View 1 2 3 2 chunks +10 lines, -9 lines 0 comments Download
M chrome/browser/extensions/api/content_settings/content_settings_store.cc View 1 2 3 4 5 1 chunk +3 lines, -4 lines 0 comments Download
M chrome/browser/extensions/api/gcd_private/gcd_private_api.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/api/gcd_private/privet_v3_session.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/api/identity/identity_apitest.cc View 1 2 3 1 chunk +3 lines, -5 lines 0 comments Download
M chrome/browser/extensions/extension_override_apitest.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/extensions/extension_web_ui.cc View 1 2 3 4 chunks +4 lines, -4 lines 0 comments Download
M chrome/browser/interests/interests_fetcher.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/metrics/plugin_metrics_provider.cc View 1 2 3 2 chunks +6 lines, -10 lines 0 comments Download
M chrome/browser/permissions/chooser_context_base.cc View 1 2 3 2 chunks +2 lines, -6 lines 0 comments Download
M chrome/browser/plugins/plugin_prefs.cc View 1 2 3 1 chunk +3 lines, -4 lines 0 comments Download
M chrome/browser/policy/managed_bookmarks_policy_handler.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/spellchecker/spellcheck_service.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/supervised_user/supervised_user_site_list.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/md_downloads/downloads_list_tracker_unittest.cc View 1 2 3 10 chunks +15 lines, -19 lines 0 comments Download
M chrome/browser/ui/webui/options/certificate_manager_handler.cc View 1 2 3 4 5 1 chunk +8 lines, -8 lines 0 comments Download
M chrome/browser/ui/webui/options/chromeos/display_options_handler.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/ui/webui/settings/certificates_handler.cc View 1 2 3 4 5 1 chunk +8 lines, -5 lines 0 comments Download
M chrome/browser/ui/webui/site_settings_helper.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/common/extensions/api/file_browser_handlers/file_browser_handler.cc View 1 2 3 1 chunk +5 lines, -6 lines 0 comments Download
M chrome/common/extensions/manifest_handlers/linked_app_icons.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/service/cloud_print/printer_job_queue_handler.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/test/chromedriver/performance_logger.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chrome/utility/importer/nss_decryptor.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M chromecast/crash/linux/crash_testing_utils.cc View 1 2 3 4 5 6 2 chunks +3 lines, -3 lines 0 comments Download
M chromecast/crash/linux/synchronized_minidump_manager.cc View 1 2 3 4 5 6 2 chunks +3 lines, -3 lines 0 comments Download
M chromeos/network/network_util.cc View 1 2 3 1 chunk +3 lines, -5 lines 0 comments Download
M chromeos/network/onc/onc_mapper.cc View 1 2 3 4 5 2 chunks +2 lines, -4 lines 0 comments Download
M chromeos/network/onc/onc_utils.cc View 1 2 3 4 5 4 chunks +8 lines, -6 lines 0 comments Download
M chromeos/network/onc/onc_validator.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M chromeos/network/prohibited_technologies_handler.cc View 1 2 3 4 5 1 chunk +3 lines, -2 lines 0 comments Download
M chromeos/network/shill_property_handler.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M chromeos/system/statistics_provider.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M components/arc/net/arc_net_host_impl.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M components/data_reduction_proxy/core/common/data_reduction_proxy_event_store.cc View 1 2 3 1 chunk +1 line, -2 lines 0 comments Download
M components/ntp_snippets/ntp_snippet.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M components/ntp_snippets/ntp_snippets_service.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M components/policy/core/common/mac_util_unittest.cc View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M components/policy/core/common/policy_loader_mac_unittest.cc View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -2 lines 0 comments Download
M components/policy/core/common/policy_test_utils.h View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M components/policy/core/common/policy_test_utils.cc View 1 2 3 4 5 5 chunks +12 lines, -13 lines 0 comments Download
M components/signin/core/browser/account_tracker_service.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M components/update_client/component_patcher.h View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M components/update_client/component_patcher.cc View 1 2 3 1 chunk +2 lines, -3 lines 0 comments Download
M components/url_matcher/url_matcher_factory.cc View 1 2 3 1 chunk +1 line, -3 lines 0 comments Download
M content/browser/android/java/gin_java_method_invocation_helper.h View 1 2 3 4 1 chunk +3 lines, -3 lines 0 comments Download
M content/browser/android/java/gin_java_method_invocation_helper.cc View 1 2 3 4 1 chunk +19 lines, -21 lines 0 comments Download
M content/browser/media/webrtc/webrtc_internals.cc View 1 2 3 1 chunk +2 lines, -4 lines 0 comments Download
M content/public/child/v8_value_converter.h View 1 2 3 2 chunks +2 lines, -0 lines 0 comments Download
M dbus/values_util.cc View 1 2 3 1 chunk +1 line, -3 lines 0 comments Download
M extensions/browser/api/declarative_webrequest/webrequest_condition_attribute.cc View 1 2 3 3 chunks +8 lines, -11 lines 0 comments Download
M extensions/browser/api/device_permissions_manager.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M extensions/browser/api/networking_private/networking_private_chromeos.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M extensions/browser/api/system_network/system_network_apitest.cc View 1 2 3 1 chunk +1 line, -4 lines 0 comments Download
M extensions/browser/verified_contents.cc View 1 2 3 1 chunk +3 lines, -3 lines 0 comments Download
M extensions/common/extension_api.cc View 1 2 3 1 chunk +2 lines, -2 lines 0 comments Download
M extensions/common/features/base_feature_provider.cc View 1 2 3 1 chunk +4 lines, -6 lines 0 comments Download
M extensions/common/manifest_handlers/kiosk_mode_info.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M extensions/renderer/dispatcher.cc View 1 2 3 4 1 chunk +2 lines, -3 lines 0 comments Download
M ios/chrome/browser/ui/webui/history/browsing_history_handler.cc View 1 2 3 4 2 chunks +2 lines, -2 lines 0 comments Download
M ios/web/web_state/ui/crw_web_controller.mm View 1 2 3 4 5 1 chunk +1 line, -1 line 0 comments Download
M ipc/ipc_message_utils.cc View 1 2 3 2 chunks +4 lines, -6 lines 0 comments Download
M net/http/http_server_properties_manager.cc View 1 2 3 1 chunk +1 line, -2 lines 0 comments Download
M remoting/protocol/http_ice_config_request.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M remoting/test/host_info.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M remoting/test/host_list_fetcher.cc View 1 2 3 1 chunk +1 line, -1 line 0 comments Download
M services/catalog/entry.cc View 1 2 3 1 chunk +1 line, -2 lines 0 comments Download
M services/catalog/instance.cc View 1 2 3 1 chunk +1 line, -2 lines 0 comments Download
M sync/test/fake_server/fake_server_verifier.cc View 1 2 3 1 chunk +3 lines, -5 lines 0 comments Download
M tools/json_schema_compiler/util.h View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download

Messages

Total messages: 26 (11 generated)
dcheng
https://codereview.chromium.org/2000803003/diff/1/base/trace_event/trace_event_argument.cc File base/trace_event/trace_event_argument.cc (right): https://codereview.chromium.org/2000803003/diff/1/base/trace_event/trace_event_argument.cc#newcode291 base/trace_event/trace_event_argument.cc:291: for (const base::Value* base_value : *list_value) Because I changed ...
4 years, 7 months ago (2016-05-20 19:49:48 UTC) #2
danakj
Looks goodish https://codereview.chromium.org/2000803003/diff/1/base/values.cc File base/values.cc (right): https://codereview.chromium.org/2000803003/diff/1/base/values.cc#newcode875 base/values.cc:875: return Set(index, base::WrapUnique(in_value)); nit: no base:: in ...
4 years, 7 months ago (2016-05-20 20:51:38 UTC) #3
dcheng
https://codereview.chromium.org/2000803003/diff/1/base/values.cc File base/values.cc (right): https://codereview.chromium.org/2000803003/diff/1/base/values.cc#newcode875 base/values.cc:875: return Set(index, base::WrapUnique(in_value)); On 2016/05/20 at 20:51:38, danakj wrote: ...
4 years, 7 months ago (2016-05-20 22:41:55 UTC) #4
dcheng
On 2016/05/20 at 22:41:55, dcheng wrote: > https://codereview.chromium.org/2000803003/diff/1/base/values.cc > File base/values.cc (right): > > https://codereview.chromium.org/2000803003/diff/1/base/values.cc#newcode875 ...
4 years, 7 months ago (2016-05-20 22:42:57 UTC) #5
danakj
LGTM
4 years, 7 months ago (2016-05-23 19:50:56 UTC) #6
dcheng
danakj: I need to fix some builds, but do you mind doing the overall review? ...
4 years, 7 months ago (2016-05-24 17:09:28 UTC) #9
danakj
LGTM No BUG btw? Might be nice for your tracking purposes. https://codereview.chromium.org/2000803003/diff/80001/base/values.cc File base/values.cc (right): ...
4 years, 7 months ago (2016-05-24 20:08:35 UTC) #10
dcheng
https://codereview.chromium.org/2000803003/diff/80001/base/values.cc File base/values.cc (right): https://codereview.chromium.org/2000803003/diff/80001/base/values.cc#newcode1040 base/values.cc:1040: list_.emplace_back(std::move(in_value)); On 2016/05/24 at 20:08:34, danakj wrote: > push_back? ...
4 years, 7 months ago (2016-05-24 20:39:02 UTC) #12
brettw
rs lgtm
4 years, 7 months ago (2016-05-25 17:41:54 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2000803003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2000803003/160001
4 years, 7 months ago (2016-05-25 17:42:41 UTC) #16
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/189714)
4 years, 7 months ago (2016-05-25 17:52:57 UTC) #18
dcheng
TBRing various noparent things: - kenrb for //chrome/browser/devtools/devtools_embedder_message_dispatcher.cc - stevenjb@ for //chromeos/network
4 years, 7 months ago (2016-05-25 17:57:34 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2000803003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2000803003/160001
4 years, 7 months ago (2016-05-25 17:58:09 UTC) #23
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 7 months ago (2016-05-25 18:31:00 UTC) #24
commit-bot: I haz the power
4 years, 7 months ago (2016-05-25 18:32:44 UTC) #26
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/cb60e7032d871c4f6a7d03de41c8a81b9c234089
Cr-Commit-Position: refs/heads/master@{#395938}

Powered by Google App Engine
This is Rietveld 408576698