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

Side by Side Diff: chrome/browser/extensions/sandboxed_extension_unpacker.cc

Issue 441008: Many changes to DictionaryValues:... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years 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) 2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2009 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/extensions/sandboxed_extension_unpacker.h" 5 #include "chrome/browser/extensions/sandboxed_extension_unpacker.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "app/gfx/codec/png_codec.h" 9 #include "app/gfx/codec/png_codec.h"
10 #include "base/crypto/signature_verifier.h" 10 #include "base/crypto/signature_verifier.h"
(...skipping 318 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 return false; 329 return false;
330 } 330 }
331 } 331 }
332 332
333 return true; 333 return true;
334 } 334 }
335 335
336 bool SandboxedExtensionUnpacker::RewriteCatalogFiles( 336 bool SandboxedExtensionUnpacker::RewriteCatalogFiles(
337 const DictionaryValue& catalogs) { 337 const DictionaryValue& catalogs) {
338 // Write our parsed catalogs back to disk. 338 // Write our parsed catalogs back to disk.
339 DictionaryValue::key_iterator key_it = catalogs.begin_keys(); 339 for (DictionaryValue::key_iterator key_it = catalogs.begin_keys();
340 for (; key_it != catalogs.end_keys(); ++key_it) { 340 key_it != catalogs.end_keys(); ++key_it) {
341 DictionaryValue* catalog; 341 DictionaryValue* catalog;
342 if (!catalogs.GetDictionary(*key_it, &catalog)) { 342 if (!catalogs.GetDictionaryWithoutPathExpansion(*key_it, &catalog)) {
343 ReportFailure("Invalid catalog data."); 343 ReportFailure("Invalid catalog data.");
344 return false; 344 return false;
345 } 345 }
346 346
347 FilePath relative_path = FilePath::FromWStringHack(*key_it); 347 FilePath relative_path = FilePath::FromWStringHack(*key_it);
348 relative_path = relative_path.AppendASCII(Extension::kMessagesFilename); 348 relative_path = relative_path.AppendASCII(Extension::kMessagesFilename);
349 if (relative_path.IsAbsolute() || relative_path.ReferencesParent()) { 349 if (relative_path.IsAbsolute() || relative_path.ReferencesParent()) {
350 ReportFailure("Invalid path for catalog."); 350 ReportFailure("Invalid path for catalog.");
351 return false; 351 return false;
352 } 352 }
(...skipping 12 matching lines...) Expand all
365 if (!file_util::WriteFile(path, 365 if (!file_util::WriteFile(path,
366 catalog_json.c_str(), 366 catalog_json.c_str(),
367 catalog_json.size())) { 367 catalog_json.size())) {
368 ReportFailure("Error saving catalog."); 368 ReportFailure("Error saving catalog.");
369 return false; 369 return false;
370 } 370 }
371 } 371 }
372 372
373 return true; 373 return true;
374 } 374 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698