diff options
author | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-18 07:19:27 +0000 |
---|---|---|
committer | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-18 07:19:27 +0000 |
commit | 15f32e949e968ade3868130b942da5c8f2827a76 (patch) | |
tree | e1429e1d129cdc2e41a23c014bc2cd5451f20c27 | |
parent | 0fe2764130ba3643771faba0637bd9db633c80a0 (diff) | |
download | chromium_src-15f32e949e968ade3868130b942da5c8f2827a76.zip chromium_src-15f32e949e968ade3868130b942da5c8f2827a76.tar.gz chromium_src-15f32e949e968ade3868130b942da5c8f2827a76.tar.bz2 |
Disable FPO throughout client_socket_pool_base.cc.
This will help track down the origin of a use-after-free bug.
BUG=109876
Review URL: http://codereview.chromium.org/9240036
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118074 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | net/socket/client_socket_pool_base.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/net/socket/client_socket_pool_base.cc b/net/socket/client_socket_pool_base.cc index a19bc2f..113985a 100644 --- a/net/socket/client_socket_pool_base.cc +++ b/net/socket/client_socket_pool_base.cc @@ -22,6 +22,14 @@ using base::TimeDelta; +// Disable FPO for all the functions in this file. This is to help track down +// http://crbug.com/109876. With FPO enabled, the stacktrace capture is +// unreliable, and we can't see the specific deletion point of the Group. +// TODO(eroman): Remove it when done investigating. +#if defined(COMPILER_MSVC) +#pragma optimize("y", off) +#endif + namespace { // Indicate whether we should enable idle socket cleanup timer. When timer is @@ -1250,3 +1258,8 @@ void ClientSocketPoolBaseHelper::Group::RemoveAllJobs() { } // namespace internal } // namespace net + +// Restore default optimization settings. +#if defined(COMPILER_MSVC) +#pragma optimize("", on) +#endif |