Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix race condition in mermaid observer #32599

Merged

Conversation

william-allspice
Copy link
Contributor

@william-allspice william-allspice commented Nov 21, 2024

This Pull Request addresses a race condition in the updateIframeHeight function where it is sometimes called when the iframe is not fully loaded or accessible resulting in an alarming error message for the user.

Screenshot 2024-11-21 at 9 44 59 AM

I have reproduced this here: https://gitea.com/small_world/MermaidTest/src/branch/main/

Please note: This error is reproducible but it happens intermittently.

To address this we:

  1. Add defensive programming within the updateIframeHeight function
  2. Delay instantiating the intersection observer until the iframe has loaded

…delaying instantiation of the intersection observer
@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Nov 21, 2024
@pull-request-size pull-request-size bot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Nov 21, 2024
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels Nov 26, 2024
@wxiaoguang wxiaoguang added this to the 1.23.0 milestone Nov 26, 2024
@wxiaoguang wxiaoguang added type/bug skip-changelog This PR is irrelevant for the (next) changelog, for example bug fixes for unreleased features. and removed skip-changelog This PR is irrelevant for the (next) changelog, for example bug fixes for unreleased features. labels Nov 26, 2024
@GiteaBot GiteaBot added lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels Nov 26, 2024
@wxiaoguang wxiaoguang enabled auto-merge (squash) November 26, 2024 06:32
@wxiaoguang wxiaoguang merged commit 88f5d33 into go-gitea:main Nov 26, 2024
26 checks passed
zjjhot added a commit to zjjhot/gitea that referenced this pull request Nov 27, 2024
* giteaofficial/main:
  Introduce OrgList and add LoadTeams, optimaze Load teams for orgs (go-gitea#32543)
  Refactor markup render system (go-gitea#32645)
  Fix: passkey login not working anymore (go-gitea#32623)
  Refactor some frontend problems (go-gitea#32646)
  Bypass vitest bug (go-gitea#32647)
  Fix race condition in mermaid observer (go-gitea#32599)
  Improve oauth2 scope token handling (go-gitea#32633)
  Fixed Issue of Review Menu Shown Behind (go-gitea#32631)
  Add github compatible tarball download API endpoints (go-gitea#32572)
  Fix markup render regression and fix some tests (go-gitea#32640)
  Fix sqlite3 test (go-gitea#32622)
  Strict pagination check (go-gitea#32548)
@silverwind silverwind added the backport/v1.22 This PR should be backported to Gitea 1.22 label Nov 28, 2024
@silverwind
Copy link
Member

Need to backport this, maybe @GiteaBot will do it automatically.

GiteaBot pushed a commit to GiteaBot/gitea that referenced this pull request Nov 29, 2024
This Pull Request addresses a race condition in the updateIframeHeight
function where it is sometimes called when the iframe is not fully
loaded or accessible resulting in an alarming error message for the
user.

To address this we:
1. Add defensive programming within the updateIframeHeight function
2. Delay instantiating the intersection observer until the iframe has
loaded

Co-authored-by: wxiaoguang <[email protected]>
@GiteaBot GiteaBot added the backport/done All backports for this PR have been created label Nov 29, 2024
wxiaoguang pushed a commit that referenced this pull request Nov 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport/done All backports for this PR have been created backport/v1.22 This PR should be backported to Gitea 1.22 lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. modifies/frontend size/S Denotes a PR that changes 10-29 lines, ignoring generated files. type/bug
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants