3 Rakka.canAccessLocalFile = function () {
4 return $.browser.mozilla;
7 var loadBin_mozilla = function (path) {
9 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
12 alert("Permission to read local file was denied. " +
13 "Open about:config and check that " +
14 "signed.applets.codebase_principal_support is set to true.");
18 = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
19 localFile.initWithPath(path);
22 = Components.classes["@mozilla.org/network/file-input-stream;1"].createInstance(Components.interfaces.nsIFileInputStream);
23 stream.init(localFile, 0x01, 00004, null);
26 = Components.classes["@mozilla.org/network/buffered-input-stream;1"].getService();
27 bstream.QueryInterface(Components.interfaces.nsIBufferedInputStream);
28 bstream.init(stream, 1000);
29 bstream.QueryInterface(Components.interfaces.nsIInputStream);
32 = Components.classes["@mozilla.org/binaryinputstream;1"].createInstance(Components.interfaces.nsIBinaryInputStream);
33 binary.setInputStream(stream);
35 return binary.readBytes(binary.available());
38 Rakka.loadLocalBinaryFile = function (path) {
39 if ($.browser.mozilla) {
40 return loadBin_mozilla(path);