diff options
author | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-23 00:55:08 +0000 |
---|---|---|
committer | pkasting@chromium.org <pkasting@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-23 00:55:08 +0000 |
commit | 70d6650d6f65b91dbcb67847aaae640d041aa592 (patch) | |
tree | bc3c91e1e67a825a30e730491a267a6c0201b1b2 /chrome/browser/automation/testing_automation_provider.cc | |
parent | 0a075d63f82146768aac85366fa28ae8dcb5cfa9 (diff) | |
download | chromium_src-70d6650d6f65b91dbcb67847aaae640d041aa592.zip chromium_src-70d6650d6f65b91dbcb67847aaae640d041aa592.tar.gz chromium_src-70d6650d6f65b91dbcb67847aaae640d041aa592.tar.bz2 |
For the SSL cert status, convert anonymous enum that gives bit values into a typedefed uint32. This allows code all over Chromium to use an explicit type instead of "int". This also means the individual named bit constants themselves have the same explicit type. I find the resulting code to be noticeably clearer. This also exposed a bug in SSLErrorInfo::GetErrorsForCertStatus() where not having an explicit type allowed a function argument ordering bug to creep in, so I claim this is safer too.
Normally this makes things like DCHECK_EQ() unhappy, but when I'd originally tested this I didn't seem to need to make any changes due to that. Will be watching the trybots...
The original motiviation for this change was to find a way to eliminate some cases of passing anonymous-typed values as template arguments (which happens when you use a value from the enum in e.g. EXPECT_EQ()), which is technically illegal in C++03, though we don't warn about it. Simply naming the enum would have done this, but this would have encouraged readers to actually use the enum name as a type, which for a bitfield is inappropriate for the reason given in the first paragraph.
BUG=92247
TEST=Compiles
Review URL: http://codereview.chromium.org/7969023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102415 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/automation/testing_automation_provider.cc')
-rw-r--r-- | chrome/browser/automation/testing_automation_provider.cc | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/chrome/browser/automation/testing_automation_provider.cc b/chrome/browser/automation/testing_automation_provider.cc index c1f805d..bc08fdc 100644 --- a/chrome/browser/automation/testing_automation_provider.cc +++ b/chrome/browser/automation/testing_automation_provider.cc @@ -1480,11 +1480,12 @@ void TestingAutomationProvider::WaitForTabToBeRestored( } } -void TestingAutomationProvider::GetSecurityState(int handle, - bool* success, - SecurityStyle* security_style, - int* ssl_cert_status, - int* insecure_content_status) { +void TestingAutomationProvider::GetSecurityState( + int handle, + bool* success, + SecurityStyle* security_style, + net::CertStatus* ssl_cert_status, + int* insecure_content_status) { if (tab_tracker_->ContainsHandle(handle)) { NavigationController* tab = tab_tracker_->GetResource(handle); NavigationEntry* entry = tab->GetActiveEntry(); |