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

Side by Side Diff: trunk/src/chrome/installer/util/l10n_string_util.cc

Issue 474483002: Revert 289312 "Move StringToUpperASCII and LowerCaseEqualsASCII ..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 4 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 // This file defines utility functions for fetching localized resources. 5 // This file defines utility functions for fetching localized resources.
6 6
7 #include "chrome/installer/util/l10n_string_util.h" 7 #include "chrome/installer/util/l10n_string_util.h"
8 8
9 #include <atlbase.h> 9 #include <atlbase.h>
10 10
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
66 // explained here : http://support.microsoft.com/kb/220830 66 // explained here : http://support.microsoft.com/kb/220830
67 std::wstring GetLocalizedEulaResource() { 67 std::wstring GetLocalizedEulaResource() {
68 wchar_t full_exe_path[MAX_PATH]; 68 wchar_t full_exe_path[MAX_PATH];
69 int len = ::GetModuleFileName(NULL, full_exe_path, MAX_PATH); 69 int len = ::GetModuleFileName(NULL, full_exe_path, MAX_PATH);
70 if (len == 0 || len == MAX_PATH) 70 if (len == 0 || len == MAX_PATH)
71 return L""; 71 return L"";
72 72
73 // The resource names are more or less the upcased language names. 73 // The resource names are more or less the upcased language names.
74 std::wstring language(GetLanguageSelector().selected_translation()); 74 std::wstring language(GetLanguageSelector().selected_translation());
75 std::replace(language.begin(), language.end(), L'-', L'_'); 75 std::replace(language.begin(), language.end(), L'-', L'_');
76 base::StringToUpperASCII(&language); 76 StringToUpperASCII(&language);
77 77
78 std::wstring resource(L"IDR_OEMPG_"); 78 std::wstring resource(L"IDR_OEMPG_");
79 resource.append(language).append(L".HTML"); 79 resource.append(language).append(L".HTML");
80 80
81 // Fall back on "en" if we don't have a resource for this language. 81 // Fall back on "en" if we don't have a resource for this language.
82 if (NULL == FindResource(NULL, resource.c_str(), RT_HTML)) 82 if (NULL == FindResource(NULL, resource.c_str(), RT_HTML))
83 resource = L"IDR_OEMPG_EN.HTML"; 83 resource = L"IDR_OEMPG_EN.HTML";
84 84
85 // Spaces and DOS paths must be url encoded. 85 // Spaces and DOS paths must be url encoded.
86 std::wstring url_path = 86 std::wstring url_path =
87 base::StringPrintf(L"res://%ls/#23/%ls", full_exe_path, resource.c_str()); 87 base::StringPrintf(L"res://%ls/#23/%ls", full_exe_path, resource.c_str());
88 88
89 // The cast is safe because url_path has limited length 89 // The cast is safe because url_path has limited length
90 // (see the definition of full_exe_path and resource). 90 // (see the definition of full_exe_path and resource).
91 DCHECK(kuint32max > (url_path.size() * 3)); 91 DCHECK(kuint32max > (url_path.size() * 3));
92 DWORD count = static_cast<DWORD>(url_path.size() * 3); 92 DWORD count = static_cast<DWORD>(url_path.size() * 3);
93 scoped_ptr<wchar_t[]> url_canon(new wchar_t[count]); 93 scoped_ptr<wchar_t[]> url_canon(new wchar_t[count]);
94 HRESULT hr = ::UrlCanonicalizeW(url_path.c_str(), url_canon.get(), 94 HRESULT hr = ::UrlCanonicalizeW(url_path.c_str(), url_canon.get(),
95 &count, URL_ESCAPE_UNSAFE); 95 &count, URL_ESCAPE_UNSAFE);
96 if (SUCCEEDED(hr)) 96 if (SUCCEEDED(hr))
97 return std::wstring(url_canon.get()); 97 return std::wstring(url_canon.get());
98 return url_path; 98 return url_path;
99 } 99 }
100 100
101 std::wstring GetCurrentTranslation() { 101 std::wstring GetCurrentTranslation() {
102 return GetLanguageSelector().selected_translation(); 102 return GetLanguageSelector().selected_translation();
103 } 103 }
104 104
105 } // namespace installer 105 } // namespace installer
OLDNEW
« no previous file with comments | « trunk/src/chrome/installer/setup/install_worker.cc ('k') | trunk/src/chrome/renderer/chrome_render_view_observer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698