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

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

Issue 193072: Move StringPiece into the base namespace. It is colliding (Closed)
Patch Set: take 2 Created 11 years, 3 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) 2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2008 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/user_script_master.h" 5 #include "chrome/browser/extensions/user_script_master.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/file_path.h" 10 #include "base/file_path.h"
11 #include "base/file_util.h" 11 #include "base/file_util.h"
12 #include "base/path_service.h" 12 #include "base/path_service.h"
13 #include "base/pickle.h" 13 #include "base/pickle.h"
14 #include "base/stl_util-inl.h" 14 #include "base/stl_util-inl.h"
15 #include "base/string_util.h" 15 #include "base/string_util.h"
16 #include "base/thread.h" 16 #include "base/thread.h"
17 #include "chrome/browser/browser_process.h" 17 #include "chrome/browser/browser_process.h"
18 #include "chrome/browser/extensions/extensions_service.h" 18 #include "chrome/browser/extensions/extensions_service.h"
19 #include "chrome/common/extensions/extension.h" 19 #include "chrome/common/extensions/extension.h"
20 #include "chrome/common/notification_service.h" 20 #include "chrome/common/notification_service.h"
21 #include "chrome/common/url_constants.h" 21 #include "chrome/common/url_constants.h"
22 #include "net/base/net_util.h" 22 #include "net/base/net_util.h"
23 23
24 24
25 // Helper function to parse greasesmonkey headers 25 // Helper function to parse greasesmonkey headers
26 static bool GetDeclarationValue(const StringPiece& line, 26 static bool GetDeclarationValue(const base::StringPiece& line,
27 const StringPiece& prefix, 27 const base::StringPiece& prefix,
28 std::string* value) { 28 std::string* value) {
29 if (!line.starts_with(prefix)) 29 if (!line.starts_with(prefix))
30 return false; 30 return false;
31 31
32 std::string temp(line.data() + prefix.length(), 32 std::string temp(line.data() + prefix.length(),
33 line.length() - prefix.length()); 33 line.length() - prefix.length());
34 TrimWhitespaceASCII(temp, TRIM_ALL, value); 34 TrimWhitespaceASCII(temp, TRIM_ALL, value);
35 return true; 35 return true;
36 } 36 }
37 37
38 UserScriptMaster::ScriptReloader::ScriptReloader(UserScriptMaster* master) 38 UserScriptMaster::ScriptReloader::ScriptReloader(UserScriptMaster* master)
39 : master_(master), 39 : master_(master),
40 master_message_loop_(MessageLoop::current()) { 40 master_message_loop_(MessageLoop::current()) {
41 } 41 }
42 42
43 // static 43 // static
44 bool UserScriptMaster::ScriptReloader::ParseMetadataHeader( 44 bool UserScriptMaster::ScriptReloader::ParseMetadataHeader(
45 const StringPiece& script_text, UserScript* script) { 45 const base::StringPiece& script_text, UserScript* script) {
46 // http://wiki.greasespot.net/Metadata_block 46 // http://wiki.greasespot.net/Metadata_block
47 StringPiece line; 47 base::StringPiece line;
48 size_t line_start = 0; 48 size_t line_start = 0;
49 size_t line_end = 0; 49 size_t line_end = 0;
50 bool in_metadata = false; 50 bool in_metadata = false;
51 51
52 static const StringPiece kUserScriptBegin("// ==UserScript=="); 52 static const base::StringPiece kUserScriptBegin("// ==UserScript==");
53 static const StringPiece kUserScriptEng("// ==/UserScript=="); 53 static const base::StringPiece kUserScriptEng("// ==/UserScript==");
54 static const StringPiece kIncludeDeclaration("// @include "); 54 static const base::StringPiece kIncludeDeclaration("// @include ");
55 static const StringPiece kMatchDeclaration("// @match "); 55 static const base::StringPiece kMatchDeclaration("// @match ");
56 static const StringPiece kRunAtDeclaration("// @run-at "); 56 static const base::StringPiece kRunAtDeclaration("// @run-at ");
57 static const StringPiece kRunAtDocumentStartValue("document-start"); 57 static const base::StringPiece kRunAtDocumentStartValue("document-start");
58 static const StringPiece kRunAtDocumentEndValue("document-end"); 58 static const base::StringPiece kRunAtDocumentEndValue("document-end");
59 59
60 while (line_start < script_text.length()) { 60 while (line_start < script_text.length()) {
61 line_end = script_text.find('\n', line_start); 61 line_end = script_text.find('\n', line_start);
62 62
63 // Handle the case where there is no trailing newline in the file. 63 // Handle the case where there is no trailing newline in the file.
64 if (line_end == std::string::npos) 64 if (line_end == std::string::npos)
65 line_end = script_text.length() - 1; 65 line_end = script_text.length() - 1;
66 66
67 line.set(script_text.data() + line_start, line_end - line_start); 67 line.set(script_text.data() + line_start, line_end - line_start);
68 68
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
197 // Pickle user scripts and return pointer to the shared memory. 197 // Pickle user scripts and return pointer to the shared memory.
198 static base::SharedMemory* Serialize(const UserScriptList& scripts) { 198 static base::SharedMemory* Serialize(const UserScriptList& scripts) {
199 Pickle pickle; 199 Pickle pickle;
200 pickle.WriteSize(scripts.size()); 200 pickle.WriteSize(scripts.size());
201 for (size_t i = 0; i < scripts.size(); i++) { 201 for (size_t i = 0; i < scripts.size(); i++) {
202 const UserScript& script = scripts[i]; 202 const UserScript& script = scripts[i];
203 script.Pickle(&pickle); 203 script.Pickle(&pickle);
204 // Write scripts as 'data' so that we can read it out in the slave without 204 // Write scripts as 'data' so that we can read it out in the slave without
205 // allocating a new string. 205 // allocating a new string.
206 for (size_t j = 0; j < script.js_scripts().size(); j++) { 206 for (size_t j = 0; j < script.js_scripts().size(); j++) {
207 StringPiece contents = script.js_scripts()[j].GetContent(); 207 base::StringPiece contents = script.js_scripts()[j].GetContent();
208 pickle.WriteData(contents.data(), contents.length()); 208 pickle.WriteData(contents.data(), contents.length());
209 } 209 }
210 for (size_t j = 0; j < script.css_scripts().size(); j++) { 210 for (size_t j = 0; j < script.css_scripts().size(); j++) {
211 StringPiece contents = script.css_scripts()[j].GetContent(); 211 base::StringPiece contents = script.css_scripts()[j].GetContent();
212 pickle.WriteData(contents.data(), contents.length()); 212 pickle.WriteData(contents.data(), contents.length());
213 } 213 }
214 } 214 }
215 215
216 // Create the shared memory object. 216 // Create the shared memory object.
217 scoped_ptr<base::SharedMemory> shared_memory(new base::SharedMemory()); 217 scoped_ptr<base::SharedMemory> shared_memory(new base::SharedMemory());
218 218
219 if (!shared_memory->Create(std::wstring(), // anonymous 219 if (!shared_memory->Create(std::wstring(), // anonymous
220 false, // read-only 220 false, // read-only
221 false, // open existing 221 false, // open existing
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 DCHECK(false); 376 DCHECK(false);
377 } 377 }
378 } 378 }
379 379
380 void UserScriptMaster::StartScan() { 380 void UserScriptMaster::StartScan() {
381 if (!script_reloader_) 381 if (!script_reloader_)
382 script_reloader_ = new ScriptReloader(this); 382 script_reloader_ = new ScriptReloader(this);
383 383
384 script_reloader_->StartScan(worker_loop_, user_script_dir_, lone_scripts_); 384 script_reloader_->StartScan(worker_loop_, user_script_dir_, lone_scripts_);
385 } 385 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/user_script_master.h ('k') | chrome/browser/privacy_blacklist/blocked_response.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698