From 45d938874d8117d8c7c8efd680a753c37f6e3d3a Mon Sep 17 00:00:00 2001 From: Valerie Date: Sat, 12 Jun 2021 15:46:31 -0400 Subject: [PATCH] no more infinite loops? --- package.json | 2 +- src/Frigid.ts | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index a5f5923..00266a6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "frigid", - "version": "1.3.1", + "version": "1.3.2", "main": "out/index.js", "types": "out/index.d.ts", "license": "MIT", diff --git a/src/Frigid.ts b/src/Frigid.ts index 1a90104..2bb9a8c 100644 --- a/src/Frigid.ts +++ b/src/Frigid.ts @@ -38,14 +38,14 @@ export default class Frigid extends Serializable { function walk(obj, transform, done = new Map()) { if(obj instanceof Serializable) { transform(obj); - if(reverseLookup(done, obj) === null) { - done.set(done.size, obj); - } } - for(const key of Object.keys(obj)) { - const val = obj[key]; - if(typeof obj === 'object') { - walk(val, transform, done); + if(reverseLookup(done, obj) === null) { + done.set(done.size, obj); + for(const key of Object.keys(obj)) { + const val = obj[key]; + if(typeof obj === 'object') { + walk(val, transform, done); + } } } }