function getPluginPath () {
let pluginPath;
Error('hoge').stack.split(/\n/).some(
- function (s)
- let (m = s.match(/-> liberator:\/\/template\/chrome:\/\/liberator\/content\/liberator\.js -> (.+):\d+$/))
- (m && (pluginPath = m[1].replace(/\?.*$/, '')))
+ function (s) {
+ let m = s.match(/@chrome:\/\/liberator\/content\/liberator\.js -> file:\/\/\/(.+):\d+$/);
+ (m && (pluginPath = m[1].replace(/\?.*$/, '')));
+ }
);
return pluginPath;
}
evalJson: function(str, toRemove) {
var json;
try {
- json = Components.classes['@mozilla.org/dom/json;1'].getService(Components.interfaces.nsIJSON);
if (toRemove) str = str.substring(1, str.length - 1);
- return json.decode(str);
+ return JSON.parse(str);
} catch (e) { return null; }
},
dateFormat: function(dtm, fmt) {