| OLD | NEW |
| 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/browser/extensions/convert_user_script.h" | 5 #include "chrome/browser/extensions/convert_user_script.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/base64.h" | 10 #include "base/base64.h" |
| (...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 157 root->Set(keys::kContentScripts, content_scripts); | 157 root->Set(keys::kContentScripts, content_scripts); |
| 158 | 158 |
| 159 base::FilePath manifest_path = temp_dir.path().Append(kManifestFilename); | 159 base::FilePath manifest_path = temp_dir.path().Append(kManifestFilename); |
| 160 JSONFileValueSerializer serializer(manifest_path); | 160 JSONFileValueSerializer serializer(manifest_path); |
| 161 if (!serializer.Serialize(*root)) { | 161 if (!serializer.Serialize(*root)) { |
| 162 *error = ASCIIToUTF16("Could not write JSON."); | 162 *error = ASCIIToUTF16("Could not write JSON."); |
| 163 return NULL; | 163 return NULL; |
| 164 } | 164 } |
| 165 | 165 |
| 166 // Write the script file. | 166 // Write the script file. |
| 167 if (!file_util::CopyFile(user_script_path, | 167 if (!base::CopyFile(user_script_path, |
| 168 temp_dir.path().AppendASCII("script.js"))) { | 168 temp_dir.path().AppendASCII("script.js"))) { |
| 169 *error = ASCIIToUTF16("Could not copy script file."); | 169 *error = ASCIIToUTF16("Could not copy script file."); |
| 170 return NULL; | 170 return NULL; |
| 171 } | 171 } |
| 172 | 172 |
| 173 // TODO(rdevlin.cronin): Continue removing std::string errors and replacing | 173 // TODO(rdevlin.cronin): Continue removing std::string errors and replacing |
| 174 // with string16 | 174 // with string16 |
| 175 std::string utf8_error; | 175 std::string utf8_error; |
| 176 scoped_refptr<Extension> extension = Extension::Create( | 176 scoped_refptr<Extension> extension = Extension::Create( |
| 177 temp_dir.path(), | 177 temp_dir.path(), |
| 178 Manifest::INTERNAL, | 178 Manifest::INTERNAL, |
| 179 *root, | 179 *root, |
| 180 Extension::NO_FLAGS, | 180 Extension::NO_FLAGS, |
| 181 &utf8_error); | 181 &utf8_error); |
| 182 *error = UTF8ToUTF16(utf8_error); | 182 *error = UTF8ToUTF16(utf8_error); |
| 183 if (!extension.get()) { | 183 if (!extension.get()) { |
| 184 NOTREACHED() << "Could not init extension " << *error; | 184 NOTREACHED() << "Could not init extension " << *error; |
| 185 return NULL; | 185 return NULL; |
| 186 } | 186 } |
| 187 | 187 |
| 188 temp_dir.Take(); // The caller takes ownership of the directory. | 188 temp_dir.Take(); // The caller takes ownership of the directory. |
| 189 return extension; | 189 return extension; |
| 190 } | 190 } |
| 191 | 191 |
| 192 } // namespace extensions | 192 } // namespace extensions |
| OLD | NEW |