Chromium Code Reviews| Index: chrome/renderer/resources/extension_process_bindings.js |
| =================================================================== |
| --- chrome/renderer/resources/extension_process_bindings.js (revision 79517) |
| +++ chrome/renderer/resources/extension_process_bindings.js (working copy) |
| @@ -659,6 +659,52 @@ |
| }); |
| }; |
| + apiFunctions["fileSystem.resolveLocalFileSystemURL"].customCallback = |
| + function(name, request, response) { |
| + var method_callback = request.callback; |
| + var successCallback = function(entry) { |
| + console.log('successCallback'); |
| + console.log(entry); |
| + method_callback(entry); |
| + }; |
| + var errorCallback = function(err) { |
| + console.log('errorCallback: code=' + err.code); |
| + chrome.extension.lastError = { |
| + "message": "File retrieval error", |
| + "code" : err.code |
| + }; |
| + method_callback(null); |
| + }; |
| + var fs = null; |
| + var resp = response ? [chromeHidden.JSON.parse(response)] : []; |
| + console.log(resp); |
| + if (resp[0].error) { |
|
ericu
2011/03/31 21:31:06
Won't this throw if !response? Is that what you w
zel
2011/04/01 03:01:35
I am not sure that we want to throw here since thi
ericu
2011/04/02 01:16:05
Then you don't want to set resp to [] if !response
zel
2011/04/06 00:06:32
Done.
|
| + console.log('Got error: '+resp[0].error); |
| + errorCallback({"code": error}); |
| + return; |
| + } |
| + // Get locak file system instance. |
|
ericu
2011/03/31 21:31:06
typo: local
zel
2011/04/06 00:06:32
Done.
|
| + fs = GetLocalFileSystem(resp[0].name, resp[0].path); |
| + console.log(fs); |
| + if (resp[0].fileUrl.substr(0, resp[0].path.length) != resp[0].path) { |
| + console.log('bad file url: ' + resp[0].fileUrl); |
| + errorCallback({"code": FileError.NOT_FOUND_ERR}); |
| + return; |
| + } |
| + var file_path = resp[0].fileUrl.substr(resp[0].path.length); |
| + console.log("Getting fileUrl: " + resp[0].fileUrl); |
| + console.log("Getting file_path: " + file_path); |
| + // Try to get directory. |
| + fs.root.getDirectory(file_path, {create: true}, |
|
ericu
2011/03/31 21:31:06
I think we don't want to create the directory here
zel
2011/04/01 03:01:35
Whooops! Good catch. Done.
|
| + successCallback, function(err) { |
| + console.log('dir errorCallback : code=' + err.code); |
| + // Not a directory? Maybe it's a file then. |
| + fs.root.getFile(file_path, {create: false}, successCallback, |
| + errorCallback); |
| + }); |
| + request.callback = null; |
| + }; |
| + |
| apiFunctions["fileBrowserPrivate.requestLocalFileSystem"].customCallback = |
| function(name, request, response) { |
| var resp = response ? [chromeHidden.JSON.parse(response)] : []; |