diff options
author | Anna Henningsen <anna@addaleax.net> | 2018-05-06 18:14:59 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2018-05-12 17:58:42 +0200 |
commit | de34cfad585c056553530ce60d9c6bd62d66f5d8 (patch) | |
tree | c551a4923f1693de522813a55a5884a7dc10b9ba | |
parent | de06115d18720755498fd871bccca837df024acb (diff) | |
download | node-new-de34cfad585c056553530ce60d9c6bd62d66f5d8.tar.gz |
test: make sure linked lists are inspectable with defaults
Make sure that a long singly-linked list can be passed
to `util.inspect()` without causing a stack overflow.
PR-URL: https://github.com/nodejs/node/pull/20017
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
-rw-r--r-- | test/parallel/test-util-inspect.js | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/parallel/test-util-inspect.js b/test/parallel/test-util-inspect.js index 5cd051299d..ad5f738a85 100644 --- a/test/parallel/test-util-inspect.js +++ b/test/parallel/test-util-inspect.js @@ -1404,3 +1404,15 @@ util.inspect(process); const args = (function() { return arguments; })('a'); assert.strictEqual(util.inspect(args), "[Arguments] { '0': 'a' }"); } + +{ + // Test that a long linked list can be inspected without throwing an error. + const list = {}; + let head = list; + // The real cutoff value is closer to 1400 stack frames as of May 2018, + // but let's be generous here – even a linked listed of length 100k should be + // inspectable in some way. + for (let i = 0; i < 100000; i++) + head = head.next = {}; + util.inspect(list); +} |