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

Side by Side Diff: chrome/browser/enumerate_modules_model_win.cc

Issue 8680016: A few more base::Bind migrations. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: win compile fix Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/external_tab_container_win.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/enumerate_modules_model_win.h" 5 #include "chrome/browser/enumerate_modules_model_win.h"
6 6
7 #include <Tlhelp32.h> 7 #include <Tlhelp32.h>
8 #include <wintrust.h> 8 #include <wintrust.h>
9 9
10 #include "base/bind.h"
10 #include "base/command_line.h" 11 #include "base/command_line.h"
11 #include "base/environment.h" 12 #include "base/environment.h"
12 #include "base/file_path.h" 13 #include "base/file_path.h"
13 #include "base/file_version_info_win.h" 14 #include "base/file_version_info_win.h"
14 #include "base/i18n/case_conversion.h" 15 #include "base/i18n/case_conversion.h"
15 #include "base/metrics/histogram.h" 16 #include "base/metrics/histogram.h"
16 #include "base/string_number_conversions.h" 17 #include "base/string_number_conversions.h"
17 #include "base/string_util.h" 18 #include "base/string_util.h"
18 #include "base/time.h" 19 #include "base/time.h"
19 #include "base/utf_string_conversions.h" 20 #include "base/utf_string_conversions.h"
(...skipping 372 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 } 393 }
393 394
394 void ModuleEnumerator::ScanNow(ModulesVector* list, bool limited_mode) { 395 void ModuleEnumerator::ScanNow(ModulesVector* list, bool limited_mode) {
395 enumerated_modules_ = list; 396 enumerated_modules_ = list;
396 397
397 limited_mode_ = limited_mode; 398 limited_mode_ = limited_mode;
398 399
399 if (!limited_mode_) { 400 if (!limited_mode_) {
400 CHECK(BrowserThread::GetCurrentThreadIdentifier(&callback_thread_id_)); 401 CHECK(BrowserThread::GetCurrentThreadIdentifier(&callback_thread_id_));
401 DCHECK(!BrowserThread::CurrentlyOn(BrowserThread::FILE)); 402 DCHECK(!BrowserThread::CurrentlyOn(BrowserThread::FILE));
402 BrowserThread::PostTask( 403 BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE,
403 BrowserThread::FILE, FROM_HERE, 404 base::Bind(&ModuleEnumerator::ScanImpl, this));
404 NewRunnableMethod(this, &ModuleEnumerator::ScanImpl));
405 } else { 405 } else {
406 // Run it synchronously. 406 // Run it synchronously.
407 ScanImpl(); 407 ScanImpl();
408 } 408 }
409 } 409 }
410 410
411 void ModuleEnumerator::ScanImpl() { 411 void ModuleEnumerator::ScanImpl() {
412 base::TimeTicks start_time = base::TimeTicks::Now(); 412 base::TimeTicks start_time = base::TimeTicks::Now();
413 413
414 enumerated_modules_->clear(); 414 enumerated_modules_->clear();
(...skipping 21 matching lines...) Expand all
436 UMA_HISTOGRAM_TIMES("Conflicts.EnumerateWinsockModules", 436 UMA_HISTOGRAM_TIMES("Conflicts.EnumerateWinsockModules",
437 checkpoint2 - checkpoint); 437 checkpoint2 - checkpoint);
438 438
439 MatchAgainstBlacklist(); 439 MatchAgainstBlacklist();
440 440
441 std::sort(enumerated_modules_->begin(), 441 std::sort(enumerated_modules_->begin(),
442 enumerated_modules_->end(), ModuleSort); 442 enumerated_modules_->end(), ModuleSort);
443 443
444 if (!limited_mode_) { 444 if (!limited_mode_) {
445 // Send a reply back on the UI thread. 445 // Send a reply back on the UI thread.
446 BrowserThread::PostTask( 446 BrowserThread::PostTask(callback_thread_id_, FROM_HERE,
447 callback_thread_id_, FROM_HERE, 447 base::Bind(&ModuleEnumerator::ReportBack, this));
448 NewRunnableMethod(this, &ModuleEnumerator::ReportBack));
449 } else { 448 } else {
450 // We are on the main thread already. 449 // We are on the main thread already.
451 ReportBack(); 450 ReportBack();
452 } 451 }
453 452
454 UMA_HISTOGRAM_TIMES("Conflicts.EnumerationTotalTime", 453 UMA_HISTOGRAM_TIMES("Conflicts.EnumerationTotalTime",
455 base::TimeTicks::Now() - start_time); 454 base::TimeTicks::Now() - start_time);
456 } 455 }
457 456
458 void ModuleEnumerator::EnumerateLoadedModules() { 457 void ModuleEnumerator::EnumerateLoadedModules() {
(...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after
970 GenerateHash(WideToUTF8(module.name), &filename); 969 GenerateHash(WideToUTF8(module.name), &filename);
971 GenerateHash(WideToUTF8(module.location), &location); 970 GenerateHash(WideToUTF8(module.location), &location);
972 GenerateHash(WideToUTF8(module.description), &description); 971 GenerateHash(WideToUTF8(module.description), &description);
973 GenerateHash(WideToUTF8(module.digital_signer), &signer); 972 GenerateHash(WideToUTF8(module.digital_signer), &signer);
974 973
975 string16 url = l10n_util::GetStringFUTF16(IDS_HELP_CENTER_VIEW_CONFLICTS, 974 string16 url = l10n_util::GetStringFUTF16(IDS_HELP_CENTER_VIEW_CONFLICTS,
976 ASCIIToUTF16(filename), ASCIIToUTF16(location), 975 ASCIIToUTF16(filename), ASCIIToUTF16(location),
977 ASCIIToUTF16(description), ASCIIToUTF16(signer)); 976 ASCIIToUTF16(description), ASCIIToUTF16(signer));
978 return GURL(UTF16ToUTF8(url)); 977 return GURL(UTF16ToUTF8(url));
979 } 978 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/external_tab_container_win.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698