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

Side by Side Diff: content/renderer/pepper/host_var_tracker.cc

Issue 225903006: PPAPI: Run clang_format.py on content/renderer/pepper (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 6 years, 8 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "content/renderer/pepper/host_var_tracker.h" 5 #include "content/renderer/pepper/host_var_tracker.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "content/renderer/pepper/host_array_buffer_var.h" 8 #include "content/renderer/pepper/host_array_buffer_var.h"
9 #include "content/renderer/pepper/host_resource_var.h" 9 #include "content/renderer/pepper/host_resource_var.h"
10 #include "content/renderer/pepper/npobject_var.h" 10 #include "content/renderer/pepper/npobject_var.h"
11 #include "content/renderer/pepper/pepper_plugin_instance_impl.h" 11 #include "content/renderer/pepper/pepper_plugin_instance_impl.h"
12 #include "ppapi/c/pp_var.h" 12 #include "ppapi/c/pp_var.h"
13 13
14 using ppapi::ArrayBufferVar; 14 using ppapi::ArrayBufferVar;
15 using ppapi::NPObjectVar; 15 using ppapi::NPObjectVar;
16 16
17 namespace content { 17 namespace content {
18 18
19 HostVarTracker::HostVarTracker() 19 HostVarTracker::HostVarTracker()
20 : VarTracker(SINGLE_THREADED), 20 : VarTracker(SINGLE_THREADED), last_shared_memory_map_id_(0) {}
21 last_shared_memory_map_id_(0) {
22 }
23 21
24 HostVarTracker::~HostVarTracker() { 22 HostVarTracker::~HostVarTracker() {}
25 }
26 23
27 ArrayBufferVar* HostVarTracker::CreateArrayBuffer(uint32 size_in_bytes) { 24 ArrayBufferVar* HostVarTracker::CreateArrayBuffer(uint32 size_in_bytes) {
28 return new HostArrayBufferVar(size_in_bytes); 25 return new HostArrayBufferVar(size_in_bytes);
29 } 26 }
30 27
31 ArrayBufferVar* HostVarTracker::CreateShmArrayBuffer( 28 ArrayBufferVar* HostVarTracker::CreateShmArrayBuffer(
32 uint32 size_in_bytes, 29 uint32 size_in_bytes,
33 base::SharedMemoryHandle handle) { 30 base::SharedMemoryHandle handle) {
34 return new HostArrayBufferVar(size_in_bytes, handle); 31 return new HostArrayBufferVar(size_in_bytes, handle);
35 } 32 }
36 33
37 void HostVarTracker::AddNPObjectVar(NPObjectVar* object_var) { 34 void HostVarTracker::AddNPObjectVar(NPObjectVar* object_var) {
38 CheckThreadingPreconditions(); 35 CheckThreadingPreconditions();
39 36
40 InstanceMap::iterator found_instance = instance_map_.find( 37 InstanceMap::iterator found_instance =
41 object_var->pp_instance()); 38 instance_map_.find(object_var->pp_instance());
42 if (found_instance == instance_map_.end()) { 39 if (found_instance == instance_map_.end()) {
43 // Lazily create the instance map. 40 // Lazily create the instance map.
44 DCHECK(object_var->pp_instance() != 0); 41 DCHECK(object_var->pp_instance() != 0);
45 found_instance = instance_map_.insert(std::make_pair( 42 found_instance =
46 object_var->pp_instance(), 43 instance_map_.insert(std::make_pair(
47 linked_ptr<NPObjectToNPObjectVarMap>(new NPObjectToNPObjectVarMap))). 44 object_var->pp_instance(),
48 first; 45 linked_ptr<NPObjectToNPObjectVarMap>(
46 new NPObjectToNPObjectVarMap))).first;
49 } 47 }
50 NPObjectToNPObjectVarMap* np_object_map = found_instance->second.get(); 48 NPObjectToNPObjectVarMap* np_object_map = found_instance->second.get();
51 49
52 DCHECK(np_object_map->find(object_var->np_object()) == 50 DCHECK(np_object_map->find(object_var->np_object()) == np_object_map->end())
53 np_object_map->end()) << "NPObjectVar already in map"; 51 << "NPObjectVar already in map";
54 np_object_map->insert(std::make_pair(object_var->np_object(), object_var)); 52 np_object_map->insert(std::make_pair(object_var->np_object(), object_var));
55 } 53 }
56 54
57 void HostVarTracker::RemoveNPObjectVar(NPObjectVar* object_var) { 55 void HostVarTracker::RemoveNPObjectVar(NPObjectVar* object_var) {
58 CheckThreadingPreconditions(); 56 CheckThreadingPreconditions();
59 57
60 InstanceMap::iterator found_instance = instance_map_.find( 58 InstanceMap::iterator found_instance =
61 object_var->pp_instance()); 59 instance_map_.find(object_var->pp_instance());
62 if (found_instance == instance_map_.end()) { 60 if (found_instance == instance_map_.end()) {
63 NOTREACHED() << "NPObjectVar has invalid instance."; 61 NOTREACHED() << "NPObjectVar has invalid instance.";
64 return; 62 return;
65 } 63 }
66 NPObjectToNPObjectVarMap* np_object_map = found_instance->second.get(); 64 NPObjectToNPObjectVarMap* np_object_map = found_instance->second.get();
67 65
68 NPObjectToNPObjectVarMap::iterator found_object = 66 NPObjectToNPObjectVarMap::iterator found_object =
69 np_object_map->find(object_var->np_object()); 67 np_object_map->find(object_var->np_object());
70 if (found_object == np_object_map->end()) { 68 if (found_object == np_object_map->end()) {
71 NOTREACHED() << "NPObjectVar not registered."; 69 NOTREACHED() << "NPObjectVar not registered.";
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 if (it->second.instance != instance) 176 if (it->second.instance != instance)
179 return false; 177 return false;
180 178
181 *handle = it->second.handle; 179 *handle = it->second.handle;
182 *size_in_bytes = it->second.size_in_bytes; 180 *size_in_bytes = it->second.size_in_bytes;
183 shared_memory_map_.erase(it); 181 shared_memory_map_.erase(it);
184 return true; 182 return true;
185 } 183 }
186 184
187 } // namespace content 185 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/pepper/host_var_tracker.h ('k') | content/renderer/pepper/host_var_tracker_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698