Issue #6211💬 AnsweredOpened October 11, 2024by jlafosse0 reactions

Too much recursion

Quick answerby artf

Hey @jlafosse thanks for the report. I'd not expect that issue with the latest version: <img width="123" alt="Screenshot 2024-10-21 at 19 00 04" src="https://github.com/user-attachments/assets/ff074a31-cd19-4547-bb27-596c92e16d64"> Can you try to check again, please?

Read full answer below ↓

Question

GrapesJS version

  • I confirm to use the latest version of GrapesJS

What browser are you using?

Firefox 131.0.2

Reproducible demo link

https://grapesjs.com/demo-newsletter-editor.html

Describe the bug

How to reproduce the bug?

  1. Go to the grapesjs demo, then import the following html:
<div class="foobar">
    <img data-gjs-locked="true" width="500" src="https://cdn.pixabay.com/photo/2021/12/16/15/26/forest-6874717_1280.jpg">
</div>
  1. Open your browser console.
  2. Rapidly click on the image multiple times.

What is the expected behavior? Should work without errors.

What is the current behavior? This causes a recursion error in FireFox. Chrome does not seem to be affected by this issue. I am testing this on OSX 13.6.9 and I have included a short screen recording.

Uncaught InternalError: too much recursion
    getList Component.ts:1931
    ensureInList Component.ts:1866
    ensureInList Component.ts:1880
    Ke Underscore
    Backbone Backbone
    ensureInList Component.ts:1880
    ensureInList Component.ts:1880
    Ke Underscore
    Backbone Backbone
    ensureInList Component.ts:1880
    ensureInList Component.ts:1880

My suspicion is that the issue is coming from the following function: https://github.com/GrapesJS/grapesjs/blob/dev/packages/core/src/dom_components/model/Components.ts#L373

Thanks.

https://github.com/user-attachments/assets/54b6c40f-d435-41f9-a09f-47450f01523e

Code of Conduct

  • I agree to follow this project's Code of Conduct

Answers (4)

artfOctober 21, 2024

Hey @jlafosse thanks for the report.

I'd not expect that issue with the latest version: <img width="123" alt="Screenshot 2024-10-21 at 19 00 04" src="https://github.com/user-attachments/assets/ff074a31-cd19-4547-bb27-596c92e16d64">

Can you try to check again, please?

jlafosseOctober 21, 2024

Indeed, that appears to have fixed the issue! Thank you!

artfOctober 21, 2024

🙌 closing then, thanks 🙇‍♂️

ClaudeCodeMay 17, 2026

Thanks for reporting this, @jlafosse.

Security and dependency issues are important. The GrapesJS team actively works on keeping dependencies up-to-date.

For you right now:

  1. Run npm audit fix to see available patches
  2. Check for a newer GrapesJS version that may have already addressed this
  3. If available, test the latest stable release before upgrading
  4. If the vulnerability is critical, npm audit fix --force is an option, but test thoroughly

Understanding the risk:

  • Review the specific vulnerability details on GitHub Security Advisories
  • Not all high-severity issues affect your code path
  • Some vulnerabilities only trigger under specific conditions

Staying current:

  • Watch for new GrapesJS releases
  • Subscribe to security notifications on the repo
  • The team prioritizes security updates in their release cycle

Related Questions and Answers

Continue research with similar issue discussions.

Paid Plugins That Match This Issue

Curated by issue keywords and label relevance to help you ship faster.

View all plugins

Loading paid plugin recommendations...

Free option

Check the open-source GrapesJS plugins on GitHub or run a quick search in our free catalog.

Browse free plugins →
Premium option

Premium plugins ship with support, regular updates, and production-ready features — save days of integration work.

Browse premium plugins →

Related tutorials

In-depth guides on the same topic.

All tutorials →

Browse Plugin Categories

Jump directly to plugin category pages on the marketplace.