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

Side by Side Diff: chrome/browser/web_applications/web_app.cc

Issue 7585029: base: Remove using declaration of MD5Digest now that hunspell was fixed. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 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
« no previous file with comments | « chrome/browser/chromeos/web_socket_proxy.cc ('k') | net/socket/web_socket_server_socket.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/browser/web_applications/web_app.h" 5 #include "chrome/browser/web_applications/web_app.h"
6 6
7 #if defined(OS_WIN) 7 #if defined(OS_WIN)
8 #include <shlobj.h> 8 #include <shlobj.h>
9 #endif // defined(OS_WIN) 9 #endif // defined(OS_WIN)
10 10
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
93 #if defined(TOOLKIT_VIEWS) 93 #if defined(TOOLKIT_VIEWS)
94 // Predicator for sorting images from largest to smallest. 94 // Predicator for sorting images from largest to smallest.
95 bool IconPrecedes(const WebApplicationInfo::IconInfo& left, 95 bool IconPrecedes(const WebApplicationInfo::IconInfo& left,
96 const WebApplicationInfo::IconInfo& right) { 96 const WebApplicationInfo::IconInfo& right) {
97 return left.width < right.width; 97 return left.width < right.width;
98 } 98 }
99 #endif 99 #endif
100 100
101 #if defined(OS_WIN) 101 #if defined(OS_WIN)
102 // Calculates image checksum using MD5. 102 // Calculates image checksum using MD5.
103 void GetImageCheckSum(const SkBitmap& image, MD5Digest* digest) { 103 void GetImageCheckSum(const SkBitmap& image, base::MD5Digest* digest) {
104 DCHECK(digest); 104 DCHECK(digest);
105 105
106 SkAutoLockPixels image_lock(image); 106 SkAutoLockPixels image_lock(image);
107 MD5Sum(image.getPixels(), image.getSize(), digest); 107 MD5Sum(image.getPixels(), image.getSize(), digest);
108 } 108 }
109 109
110 // Saves |image| as an |icon_file| with the checksum. 110 // Saves |image| as an |icon_file| with the checksum.
111 bool SaveIconWithCheckSum(const FilePath& icon_file, const SkBitmap& image) { 111 bool SaveIconWithCheckSum(const FilePath& icon_file, const SkBitmap& image) {
112 if (!IconUtil::CreateIconFileFromSkBitmap(image, icon_file)) 112 if (!IconUtil::CreateIconFileFromSkBitmap(image, icon_file))
113 return false; 113 return false;
114 114
115 MD5Digest digest; 115 base::MD5Digest digest;
116 GetImageCheckSum(image, &digest); 116 GetImageCheckSum(image, &digest);
117 117
118 FilePath cheksum_file(icon_file.ReplaceExtension(kIconChecksumFileExt)); 118 FilePath cheksum_file(icon_file.ReplaceExtension(kIconChecksumFileExt));
119 return file_util::WriteFile(cheksum_file, 119 return file_util::WriteFile(cheksum_file,
120 reinterpret_cast<const char*>(&digest), 120 reinterpret_cast<const char*>(&digest),
121 sizeof(digest)) == sizeof(digest); 121 sizeof(digest)) == sizeof(digest);
122 } 122 }
123 123
124 // Returns true if |icon_file| is missing or different from |image|. 124 // Returns true if |icon_file| is missing or different from |image|.
125 bool ShouldUpdateIcon(const FilePath& icon_file, const SkBitmap& image) { 125 bool ShouldUpdateIcon(const FilePath& icon_file, const SkBitmap& image) {
126 FilePath checksum_file(icon_file.ReplaceExtension(kIconChecksumFileExt)); 126 FilePath checksum_file(icon_file.ReplaceExtension(kIconChecksumFileExt));
127 127
128 // Returns true if icon_file or checksum file is missing. 128 // Returns true if icon_file or checksum file is missing.
129 if (!file_util::PathExists(icon_file) || 129 if (!file_util::PathExists(icon_file) ||
130 !file_util::PathExists(checksum_file)) 130 !file_util::PathExists(checksum_file))
131 return true; 131 return true;
132 132
133 MD5Digest persisted_image_checksum; 133 base::MD5Digest persisted_image_checksum;
134 if (sizeof(persisted_image_checksum) != file_util::ReadFile(checksum_file, 134 if (sizeof(persisted_image_checksum) != file_util::ReadFile(checksum_file,
135 reinterpret_cast<char*>(&persisted_image_checksum), 135 reinterpret_cast<char*>(&persisted_image_checksum),
136 sizeof(persisted_image_checksum))) 136 sizeof(persisted_image_checksum)))
137 return true; 137 return true;
138 138
139 MD5Digest downloaded_image_checksum; 139 base::MD5Digest downloaded_image_checksum;
140 GetImageCheckSum(image, &downloaded_image_checksum); 140 GetImageCheckSum(image, &downloaded_image_checksum);
141 141
142 // Update icon if checksums are not equal. 142 // Update icon if checksums are not equal.
143 return memcmp(&persisted_image_checksum, &downloaded_image_checksum, 143 return memcmp(&persisted_image_checksum, &downloaded_image_checksum,
144 sizeof(MD5Digest)) != 0; 144 sizeof(base::MD5Digest)) != 0;
145 } 145 }
146 146
147 #endif // defined(OS_WIN) 147 #endif // defined(OS_WIN)
148 148
149 // Represents a task that creates web application shortcut. This runs on 149 // Represents a task that creates web application shortcut. This runs on
150 // file thread and schedules the callback (if any) on the calling thread 150 // file thread and schedules the callback (if any) on the calling thread
151 // when finished (either success or failure). 151 // when finished (either success or failure).
152 class CreateShortcutTask : public Task { 152 class CreateShortcutTask : public Task {
153 public: 153 public:
154 CreateShortcutTask(const FilePath& profile_path, 154 CreateShortcutTask(const FilePath& profile_path,
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after
530 530
531 #if defined(TOOLKIT_USES_GTK) 531 #if defined(TOOLKIT_USES_GTK)
532 std::string GetWMClassFromAppName(std::string app_name) { 532 std::string GetWMClassFromAppName(std::string app_name) {
533 file_util::ReplaceIllegalCharactersInPath(&app_name, '_'); 533 file_util::ReplaceIllegalCharactersInPath(&app_name, '_');
534 TrimString(app_name, "_", &app_name); 534 TrimString(app_name, "_", &app_name);
535 return app_name; 535 return app_name;
536 } 536 }
537 #endif 537 #endif
538 538
539 } // namespace web_app 539 } // namespace web_app
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/web_socket_proxy.cc ('k') | net/socket/web_socket_server_socket.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698