base: Remove operator& from ScopedVariant and ScopedPropVariant.
commit8095bc45b602f704ef85df43f9913f48fbf4cf9c
authordanakj <danakj@chromium.org>
Tue, 10 Mar 2015 00:41:03 +0000 (9 17:41 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 10 Mar 2015 00:41:36 +0000 (10 00:41 +0000)
tree8d2db4fcfcf0c0fbec95332ad0a5af4bc58d4457
parent23ae3128db0d84a6b1ffa640568a5ec90cfc8808
base: Remove operator& from ScopedVariant and ScopedPropVariant.

The operator& is dangerous as it makes code unclear what is happening.

For ScopedPropVariant there is already a get() method returning a
const& of the internal type. So doing &foo.get() will get a pointer to
the internal type.

For ScopedVariant, there is only operator&, so replace it with an
operator*() that returns a const&. This changes callsites from doing
something like V_FOO(&scoper) to V_FOO(&*scoper) which makes it clear
that it is getting the address of the thing inside scoper, not the
scoper itself.

R=Nico
BUG=464816

Review URL: https://codereview.chromium.org/985853005

Cr-Commit-Position: refs/heads/master@{#319795}
15 files changed:
base/win/scoped_propvariant.h
base/win/scoped_variant.h
base/win/scoped_variant_unittest.cc
chrome/browser/importer/ie_importer_browsertest_win.cc
chrome/browser/ui/views/accessibility/navigation_accessibility_uitest_win.cc
chrome/installer/util/advanced_firewall_manager_win.cc
chrome/installer/util/wmi.cc
content/browser/accessibility/accessibility_event_recorder_win.cc
content/browser/accessibility/accessibility_win_browsertest.cc
media/video/capture/win/video_capture_device_factory_win.cc
media/video/capture/win/video_capture_device_win.cc
ui/accessibility/platform/ax_platform_node_win_unittest.cc
ui/views/accessibility/native_view_accessibility_win_unittest.cc
win8/metro_driver/ime/text_service.cc
win8/test/ui_automation_client.cc