aboutsummaryrefslogtreecommitdiff
path: root/src/library.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/library.js')
-rw-r--r--src/library.js9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/library.js b/src/library.js
index 5ebd2c02..b4efd901 100644
--- a/src/library.js
+++ b/src/library.js
@@ -215,6 +215,9 @@ var Library = {
var i = 0;
do {
IHEAP[pdest+len+i] = IHEAP[psrc+i];
+#if SAFE_HEAP
+ SAFE_HEAP_ACCESS(pdest+len+i, 'i8', true);
+#endif
i ++;
} while (IHEAP[psrc+i-1] != 0);
return pdest;
@@ -224,7 +227,11 @@ var Library = {
var len = Pointer_stringify(pdest).length; // TODO: use strlen, but need dependencies system
var i = 0;
while(1) {
- if ((IHEAP[pdest+len+i] = IHEAP[psrc+i]) == 0) break;
+ IHEAP[pdest+len+i] = IHEAP[psrc+i];
+#if SAFE_HEAP
+ SAFE_HEAP_ACCESS(pdest+len+i, 'i8', true);
+#endif
+ if (IHEAP[pdest+len+i] == 0) break;
i ++;
if (i == num) {
IHEAP[pdest+len+i] = 0;