| Index: lib/filesystem/io.js |
| =================================================================== |
| --- a/lib/filesystem/io.js |
| +++ b/lib/filesystem/io.js |
| @@ -45,24 +45,42 @@ var IO = exports.IO = |
| resolveFilePath: function(path) |
| { |
| return new FakeFile(path); |
| }, |
| readFromFile: function(file, decode, listener, callback, timeLineID) |
| { |
| + // Hack to allow importing old data |
| + if (typeof file == "string") |
| + { |
| + var Utils = require("utils").Utils; |
| + Utils.runAsync(function() |
| + { |
| + var lines = file.split(/[\r\n]+/); |
| + for (var i = 0; i < lines.length; i++) |
| + listener.process(lines[i]); |
| + listener.process(null); |
| + callback(null); |
| + }.bind(this)); |
| + return; |
| + } |
| + |
| if ("spec" in file && /^defaults\b/.test(file.spec)) |
| { |
| // Code attempts to read the default patterns.ini, we don't have that. |
| // Make sure to execute first-run actions instead. |
| - if (localStorage.currentVersion) |
| - seenDataCorruption = true; |
| - delete localStorage.currentVersion; |
| - callback(null); |
| + var Utils = require("utils").Utils; |
| + Utils.runAsync(function() |
| + { |
| + if (localStorage.currentVersion) |
| + seenDataCorruption = true; |
| + callback(null) |
|
Thomas Greiner
2013/11/26 10:23:32
nit: semicolon missing
|
| + }); |
| return; |
| } |
| this._getFileEntry(file, false, function(fs, fileEntry) |
| { |
| fileEntry.file(function(file) |
| { |
| var reader = new FileReader(); |
| @@ -164,16 +182,29 @@ var IO = exports.IO = |
| { |
| callback(null); |
| }, callback); |
| }, callback); |
| }, |
| statFile: function(file, callback) |
| { |
| + // Hack to allow importing old data |
| + if (typeof file == "string") |
| + { |
| + var Utils = require("utils").Utils; |
| + Utils.runAsync(callback.bind(null, null, { |
| + exists: true, |
| + isDirectory: false, |
| + isFile: true, |
| + lastModified: 0 |
| + })); |
| + return; |
| + } |
| + |
| this._getFileEntry(file, false, function(fs, fileEntry) |
| { |
| fileEntry.getMetadata(function(metadata) |
| { |
| callback(null, { |
| exists: true, |
| isDirectory: fileEntry.isDirectory, |
| isFile: fileEntry.isFile, |