GeezerVison is showing github.com — timers: avoid generating holey internal arrays · nodejs/node@5358601
File treeExpand file treeCollapse file tree Open diff view settings Expand file treeCollapse file tree Open diff view settings Collapse file Copy file name to clipboardExpand all lines: lib/timers.js +4-3Lines changed: 4 additions & 3 deletions | Original file line number | Diff line number | Diff line change |
|---|
| 22 | 22 | 'use strict'; | 23 | 23 |
| 24 | 24 | const { | | 25 | + ArrayPrototypePush, | 25 | 26 | MathTrunc, | 26 | 27 | ObjectDefineProperty, | 27 | 28 | ObjectDefineProperties, | @@ -154,7 +155,7 @@ function setTimeout(callback, after, arg1, arg2, arg3) { | 154 | 155 | args = [arg1, arg2, arg3]; | 155 | 156 | for (i = 5; i < arguments.length; i++) { | 156 | 157 | // Extend array dynamically, makes .apply run much faster in v6.0.0 | 157 | | - args[i - 2] = arguments[i]; | | 158 | + ArrayPrototypePush(args, arguments[i]); | 158 | 159 | } | 159 | 160 | break; | 160 | 161 | } | @@ -224,7 +225,7 @@ function setInterval(callback, repeat, arg1, arg2, arg3) { | 224 | 225 | args = [arg1, arg2, arg3]; | 225 | 226 | for (i = 5; i < arguments.length; i++) { | 226 | 227 | // Extend array dynamically, makes .apply run much faster in v6.0.0 | 227 | | - args[i - 2] = arguments[i]; | | 228 | + ArrayPrototypePush(args, arguments[i]); | 228 | 229 | } | 229 | 230 | break; | 230 | 231 | } | @@ -296,7 +297,7 @@ function setImmediate(callback, arg1, arg2, arg3) { | 296 | 297 | args = [arg1, arg2, arg3]; | 297 | 298 | for (i = 4; i < arguments.length; i++) { | 298 | 299 | // Extend array dynamically, makes .apply run much faster in v6.0.0 | 299 | | - args[i - 1] = arguments[i]; | | 300 | + ArrayPrototypePush(args, arguments[i]); | 300 | 301 | } | 301 | 302 | break; | 302 | 303 | } | |
|