From df1e22f2e4148e7a819b040f0ef4782f2db8d06c Mon Sep 17 00:00:00 2001 From: Brendan Dahl Date: Fri, 30 Dec 2011 14:59:00 -0800 Subject: [PATCH] Switch to push instead of slice. Faster on jsperf, but doesn't seem to be faster testing locally. --- src/function.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/function.js b/src/function.js index 996b62c6a..83db53ba1 100644 --- a/src/function.js +++ b/src/function.js @@ -437,8 +437,9 @@ var PostScriptStack = (function PostScriptStackClosure() { copy: function copy(n) { if (this.stack.length + n >= MAX_STACK_SIZE) error('PostScript function stack overflow.'); - var part = this.stack.slice(this.stack.length - n); - this.stack = this.stack.concat(part); + var stack = this.stack; + for (var i = stack.length - n, j = n - 1; j >= 0; j--, i++) + stack.push(stack[i]); }, index: function index(n) { this.push(this.stack[this.stack.length - n - 1]);