diff options
Diffstat (limited to 'src/preamble.js')
-rw-r--r-- | src/preamble.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/preamble.js b/src/preamble.js index 44f5c876..6babdfda 100644 --- a/src/preamble.js +++ b/src/preamble.js @@ -383,5 +383,29 @@ function intArrayToString(array) { var unSign = {{{ unSign.toString() }}} var reSign = {{{ reSign.toString() }}} +// Use console read if available, otherwise we are in a browser, use an XHR +try { + read; +} catch(e) { + this['read'] = function(url) { + // TODO: use mozResponseArrayBuffer/responseStream/etc. if available + var xhr = new XMLHttpRequest(); + xhr.open("GET", url, false); + xhr.overrideMimeType('text/plain; charset=x-user-defined'); // ask for binary data + xhr.send(null); + return xhr.responseText; + } +} + +function readBinary(filename) { + var stringy = read(filename); + var data = new Array(stringy.length+1); + for (var i = 0; i < stringy.length; i++) { + data[i] = stringy.charCodeAt(i) & 0xff; + } + data[stringy.length] = 0; + return data; +} + // === Body === |