From 045358c02759d2212692a3fac17f8ee01c28625a Mon Sep 17 00:00:00 2001 From: Arvind Satyanarayan Date: Fri, 29 Apr 2022 14:54:52 -0400 Subject: [PATCH] fix: prevent selection compilers from side effecting selection defs --- src/compile/selection/parse.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/compile/selection/parse.ts b/src/compile/selection/parse.ts index aeccb98a48..d816af1505 100644 --- a/src/compile/selection/parse.ts +++ b/src/compile/selection/parse.ts @@ -52,9 +52,10 @@ export function parseUnitSelection(model: UnitModel, selDefs: SelectionParameter events: isString(defaults.on) ? parseSelector(defaults.on, 'scope') : array(duplicate(defaults.on)) } as any); + const def_ = duplicate(def); // defensive copy to prevent compilers from causing side effects for (const c of selectionCompilers) { if (c.defined(selCmpt) && c.parse) { - c.parse(model, selCmpt, def); + c.parse(model, selCmpt, def_); } } }