Skip to content

Commit

Permalink
fix: avoid infinite loop when inlining
Browse files Browse the repository at this point in the history
  • Loading branch information
j4k0xb committed Feb 16, 2024
1 parent a75c5bb commit 5dab01a
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions packages/webcrack/src/ast-utils/inline.ts
Original file line number Diff line number Diff line change
Expand Up @@ -246,6 +246,8 @@ export function inlineVariableAliases(
const varScope = ref.scope;
const varBinding = varScope.getBinding(varName.current!);
if (!varBinding) continue;
// Avoid infinite loop from `alias = alias;` (caused by dead code injection?)
if (ref.isIdentifier({ name: varBinding.identifier.name })) continue;

// Check all further aliases (`var alias2 = alias;`)
state.changes += inlineVariableAliases(varBinding, targetName).changes;
Expand Down

0 comments on commit 5dab01a

Please sign in to comment.