aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoralon@honor <none@none>2010-09-10 21:38:19 -0700
committeralon@honor <none@none>2010-09-10 21:38:19 -0700
commit5f3a9ffd0e69c2d00e90261c69d9cd2ec8bfa2f9 (patch)
treeea7b5507a1c44b0e0e552cfad892122b4ca4ca9d /src
parent285a5ef5d5ffb9c555b95a08ef5192b9be8033c6 (diff)
fix some print() corners
Diffstat (limited to 'src')
-rw-r--r--src/preamble.js12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/preamble.js b/src/preamble.js
index 38d73dd8..1ed1b6eb 100644
--- a/src/preamble.js
+++ b/src/preamble.js
@@ -8,8 +8,8 @@ var __THREW__ = false; // Used in checking for thrown exceptions.
var __ATEXIT__ = [];
-var HEAP = [];
-var HEAPTOP = 0;
+var HEAP = [0];
+var HEAPTOP = 1; // Leave 0 as an invalid address, 'NULL'
#if SAFE_HEAP
// Semi-manual memory corruption debugging
@@ -147,8 +147,12 @@ function __formatString() {
}
function _printf() {
- var text = __formatString.apply(null, arguments);
- print(Pointer_stringify(text));
+ var text = Pointer_stringify(__formatString.apply(null, arguments));
+ // Our print() will print a \n anyhow... remove dupes
+ if (text[text.length-1] == '\n') {
+ text = text.substr(0, text.length-1);
+ }
+ print(text);
}
function _puts(p) {