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

Side by Side Diff: chrome/installer/setup/install.cc

Issue 902643002: Revert "Enable positional parameters for base::vsnprintf and base::vswprintf on Windows." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: extension Created 5 years, 10 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 (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 "chrome/installer/setup/install.h" 5 #include "chrome/installer/setup/install.h"
6 6
7 #include <windows.h> 7 #include <windows.h>
8 #include <shlobj.h> 8 #include <shlobj.h>
9 #include <time.h> 9 #include <time.h>
10 10
(...skipping 267 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 elements_dir.push_back(base::FilePath::kSeparators[0]); 278 elements_dir.push_back(base::FilePath::kSeparators[0]);
279 elements_dir.append(installer::kVisualElements); 279 elements_dir.append(installer::kVisualElements);
280 280
281 // Some distributions of Chromium may not include visual elements. Only 281 // Some distributions of Chromium may not include visual elements. Only
282 // proceed if this distribution does. 282 // proceed if this distribution does.
283 if (!base::PathExists(src_path.Append(elements_dir))) { 283 if (!base::PathExists(src_path.Append(elements_dir))) {
284 VLOG(1) << "No visual elements found, not writing " 284 VLOG(1) << "No visual elements found, not writing "
285 << installer::kVisualElementsManifest << " to " << src_path.value(); 285 << installer::kVisualElementsManifest << " to " << src_path.value();
286 return true; 286 return true;
287 } else { 287 } else {
288 // A printf_p-style format string for generating the visual elements 288 // A printf-style format string for generating the visual elements
289 // manifest. Required arguments, in order, are: 289 // manifest. Required arguments, in order, are:
290 // - Localized display name for the product. 290 // - Localized display name for the product.
291 // - Relative path to the VisualElements directory. 291 // - Relative path to the VisualElements directory, three times.
292 static const char kManifestTemplate[] = 292 static const char kManifestTemplate[] =
293 "<Application>\r\n" 293 "<Application>\r\n"
294 " <VisualElements\r\n" 294 " <VisualElements\r\n"
295 " DisplayName='%1$ls'\r\n" 295 " DisplayName='%ls'\r\n"
296 " Logo='%2$ls\\Logo.png'\r\n" 296 " Logo='%ls\\Logo.png'\r\n"
297 " SmallLogo='%2$ls\\SmallLogo.png'\r\n" 297 " SmallLogo='%ls\\SmallLogo.png'\r\n"
298 " ForegroundText='light'\r\n" 298 " ForegroundText='light'\r\n"
299 " BackgroundColor='#323232'>\r\n" 299 " BackgroundColor='#323232'>\r\n"
300 " <DefaultTile ShowName='allLogos'/>\r\n" 300 " <DefaultTile ShowName='allLogos'/>\r\n"
301 " <SplashScreen Image='%2$ls\\splash-620x300.png'/>\r\n" 301 " <SplashScreen Image='%ls\\splash-620x300.png'/>\r\n"
302 " </VisualElements>\r\n" 302 " </VisualElements>\r\n"
303 "</Application>"; 303 "</Application>";
304 304
305 const base::string16 manifest_template( 305 const base::string16 manifest_template(
306 base::ASCIIToUTF16(kManifestTemplate)); 306 base::ASCIIToUTF16(kManifestTemplate));
307 307
308 BrowserDistribution* dist = BrowserDistribution::GetSpecificDistribution( 308 BrowserDistribution* dist = BrowserDistribution::GetSpecificDistribution(
309 BrowserDistribution::CHROME_BROWSER); 309 BrowserDistribution::CHROME_BROWSER);
310 // TODO(grt): http://crbug.com/75152 Write a reference to a localized 310 // TODO(grt): http://crbug.com/75152 Write a reference to a localized
311 // resource for |display_name|. 311 // resource for |display_name|.
312 base::string16 display_name(dist->GetDisplayName()); 312 base::string16 display_name(dist->GetDisplayName());
313 EscapeXmlAttributeValueInSingleQuotes(&display_name); 313 EscapeXmlAttributeValueInSingleQuotes(&display_name);
314 314
315 // Fill the manifest with the desired values. 315 // Fill the manifest with the desired values.
316 base::string16 manifest16(base::StringPrintf( 316 base::string16 manifest16(base::StringPrintf(
317 manifest_template.c_str(), display_name.c_str(), elements_dir.c_str())); 317 manifest_template.c_str(), display_name.c_str(), elements_dir.c_str(),
318 elements_dir.c_str(), elements_dir.c_str()));
318 319
319 // Write the manifest to |src_path|. 320 // Write the manifest to |src_path|.
320 const std::string manifest(base::UTF16ToUTF8(manifest16)); 321 const std::string manifest(base::UTF16ToUTF8(manifest16));
321 int size = base::checked_cast<int>(manifest.size()); 322 int size = base::checked_cast<int>(manifest.size());
322 if (base::WriteFile( 323 if (base::WriteFile(
323 src_path.Append(installer::kVisualElementsManifest), 324 src_path.Append(installer::kVisualElementsManifest),
324 manifest.c_str(), size) == size) { 325 manifest.c_str(), size) == size) {
325 VLOG(1) << "Successfully wrote " << installer::kVisualElementsManifest 326 VLOG(1) << "Successfully wrote " << installer::kVisualElementsManifest
326 << " to " << src_path.value(); 327 << " to " << src_path.value();
327 return true; 328 return true;
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after
639 INSTALL_SHORTCUT_CREATE_EACH_IF_NO_SYSTEM_LEVEL); 640 INSTALL_SHORTCUT_CREATE_EACH_IF_NO_SYSTEM_LEVEL);
640 641
641 // Read master_preferences copied beside chrome.exe at install. 642 // Read master_preferences copied beside chrome.exe at install.
642 MasterPreferences prefs(installation_root.AppendASCII(kDefaultMasterPrefs)); 643 MasterPreferences prefs(installation_root.AppendASCII(kDefaultMasterPrefs));
643 base::FilePath chrome_exe(installation_root.Append(kChromeExe)); 644 base::FilePath chrome_exe(installation_root.Append(kChromeExe));
644 CreateOrUpdateShortcuts( 645 CreateOrUpdateShortcuts(
645 chrome_exe, chrome, prefs, CURRENT_USER, install_operation); 646 chrome_exe, chrome, prefs, CURRENT_USER, install_operation);
646 } 647 }
647 648
648 } // namespace installer 649 } // namespace installer
OLDNEW
« no previous file with comments | « base/strings/stringprintf_unittest.cc ('k') | extensions/browser/api/printer_provider/printer_provider_apitest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698