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

Side by Side Diff: syzygy/agent/asan/registry_cache.cc

Issue 2363733003: Make syzyasan_rtl compile in 64 bit (Closed)
Patch Set: Created 4 years, 2 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 Google Inc. All Rights Reserved. 1 // Copyright 2015 Google Inc. All Rights Reserved.
2 // 2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); 3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License. 4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at 5 // You may obtain a copy of the License at
6 // 6 //
7 // http://www.apache.org/licenses/LICENSE-2.0 7 // http://www.apache.org/licenses/LICENSE-2.0
8 // 8 //
9 // Unless required by applicable law or agreed to in writing, software 9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, 10 // distributed under the License is distributed on an "AS IS" BASIS,
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 128
129 // Get the module version. We start by grabbing the product version from the 129 // Get the module version. We start by grabbing the product version from the
130 // file version information. 130 // file version information.
131 module_version_.clear(); 131 module_version_.clear();
132 std::unique_ptr<FileVersionInfo> version_info( 132 std::unique_ptr<FileVersionInfo> version_info(
133 FileVersionInfo::CreateFileVersionInfo(file_path)); 133 FileVersionInfo::CreateFileVersionInfo(file_path));
134 if (version_info) 134 if (version_info)
135 module_version_ = version_info->product_version(); 135 module_version_ = version_info->product_version();
136 if (module_version_.empty()) { 136 if (module_version_.empty()) {
137 // If that fails, we try grabbing the version from the PE signature. 137 // If that fails, we try grabbing the version from the PE signature.
138 #ifndef _WIN64
138 pe::PEFile pe_file; 139 pe::PEFile pe_file;
140 pe::PEFile::Signature signature;
141 #else
142 pe::PEFile64 pe_file;
143 pe::PEFile64::Signature signature;
144 #endif
139 if (pe_file.Init(file_path)) { 145 if (pe_file.Init(file_path)) {
140 pe::PEFile::Signature signature;
141 pe_file.GetSignature(&signature); 146 pe_file.GetSignature(&signature);
142 module_version_ = base::StringPrintf( 147 module_version_ = base::StringPrintf(
143 L"%08X%x", signature.module_time_date_stamp, signature.module_size); 148 L"%08X%x", signature.module_time_date_stamp, signature.module_size);
144 } else { 149 } else {
145 // If all fails, we bail. 150 // If all fails, we bail.
146 LOG(ERROR) << "Cannot get the module version."; 151 LOG(ERROR) << "Cannot get the module version.";
147 return false; 152 return false;
148 } 153 }
149 } 154 }
150 module_key_name_ = registry_cache_key_; 155 module_key_name_ = registry_cache_key_;
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 for (RegValueIter iter(kRegistryRootKey, module_key_name_.c_str()); 283 for (RegValueIter iter(kRegistryRootKey, module_key_name_.c_str());
279 iter.Valid(); ++iter) { 284 iter.Valid(); ++iter) {
280 DCHECK_EQ(sizeof(StackId), iter.ValueSize()); 285 DCHECK_EQ(sizeof(StackId), iter.ValueSize());
281 const StackId* ptr_value = reinterpret_cast<const StackId*>(iter.Value()); 286 const StackId* ptr_value = reinterpret_cast<const StackId*>(iter.Value());
282 entries_.insert(*ptr_value); 287 entries_.insert(*ptr_value);
283 } 288 }
284 } 289 }
285 290
286 } // namespace asan 291 } // namespace asan
287 } // namespace agent 292 } // namespace agent
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698