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

Side by Side Diff: components/font_service/public/cpp/font_service_thread.cc

Issue 2028193002: Migrate WaitableEvent to enum-based constructor in components/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@WEvent_enums
Patch Set: rm comment explaining true/false Created 4 years, 6 months 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "components/font_service/public/cpp/font_service_thread.h" 5 #include "components/font_service/public/cpp/font_service_thread.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/files/file.h" 10 #include "base/files/file.h"
(...skipping 19 matching lines...) Expand all
30 const char family_name[], 30 const char family_name[],
31 SkFontStyle requested_style, 31 SkFontStyle requested_style,
32 SkFontConfigInterface::FontIdentity* out_font_identity, 32 SkFontConfigInterface::FontIdentity* out_font_identity,
33 SkString* out_family_name, 33 SkString* out_family_name,
34 SkFontStyle* out_style) { 34 SkFontStyle* out_style) {
35 DCHECK_NE(GetThreadId(), base::PlatformThread::CurrentId()); 35 DCHECK_NE(GetThreadId(), base::PlatformThread::CurrentId());
36 36
37 bool out_valid = false; 37 bool out_valid = false;
38 // This proxies to the other thread, which proxies to mojo. Only on the reply 38 // This proxies to the other thread, which proxies to mojo. Only on the reply
39 // from mojo do we return from this. 39 // from mojo do we return from this.
40 base::WaitableEvent done_event(false, false); 40 base::WaitableEvent done_event(
41 base::WaitableEvent::ResetPolicy::AUTOMATIC,
42 base::WaitableEvent::InitialState::NOT_SIGNALED);
41 task_runner()->PostTask( 43 task_runner()->PostTask(
42 FROM_HERE, 44 FROM_HERE,
43 base::Bind(&FontServiceThread::MatchFamilyNameImpl, this, &done_event, 45 base::Bind(&FontServiceThread::MatchFamilyNameImpl, this, &done_event,
44 family_name, requested_style, &out_valid, out_font_identity, 46 family_name, requested_style, &out_valid, out_font_identity,
45 out_family_name, out_style)); 47 out_family_name, out_style));
46 done_event.Wait(); 48 done_event.Wait();
47 49
48 return out_valid; 50 return out_valid;
49 } 51 }
50 52
51 scoped_refptr<MappedFontFile> FontServiceThread::OpenStream( 53 scoped_refptr<MappedFontFile> FontServiceThread::OpenStream(
52 const SkFontConfigInterface::FontIdentity& identity) { 54 const SkFontConfigInterface::FontIdentity& identity) {
53 DCHECK_NE(GetThreadId(), base::PlatformThread::CurrentId()); 55 DCHECK_NE(GetThreadId(), base::PlatformThread::CurrentId());
54 56
55 base::File stream_file; 57 base::File stream_file;
56 // This proxies to the other thread, which proxies to mojo. Only on the reply 58 // This proxies to the other thread, which proxies to mojo. Only on the reply
57 // from mojo do we return from this. 59 // from mojo do we return from this.
58 base::WaitableEvent done_event(false, false); 60 base::WaitableEvent done_event(
61 base::WaitableEvent::ResetPolicy::AUTOMATIC,
62 base::WaitableEvent::InitialState::NOT_SIGNALED);
59 task_runner()->PostTask(FROM_HERE, 63 task_runner()->PostTask(FROM_HERE,
60 base::Bind(&FontServiceThread::OpenStreamImpl, this, 64 base::Bind(&FontServiceThread::OpenStreamImpl, this,
61 &done_event, &stream_file, identity.fID)); 65 &done_event, &stream_file, identity.fID));
62 done_event.Wait(); 66 done_event.Wait();
63 67
64 if (!stream_file.IsValid()) { 68 if (!stream_file.IsValid()) {
65 // The font-service may have been killed. 69 // The font-service may have been killed.
66 return nullptr; 70 return nullptr;
67 } 71 }
68 72
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 base::Bind(&FontServiceThread::OnFontServiceConnectionError, 183 base::Bind(&FontServiceThread::OnFontServiceConnectionError,
180 weak_factory_.GetWeakPtr())); 184 weak_factory_.GetWeakPtr()));
181 } 185 }
182 186
183 void FontServiceThread::CleanUp() { 187 void FontServiceThread::CleanUp() {
184 font_service_.reset(); 188 font_service_.reset();
185 } 189 }
186 190
187 } // namespace internal 191 } // namespace internal
188 } // namespace font_service 192 } // namespace font_service
OLDNEW
« no previous file with comments | « components/browser_sync/browser/profile_sync_service_autofill_unittest.cc ('k') | components/leveldb/leveldb_mojo_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698