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/ephemeron list #668

Merged
merged 4 commits into from
Aug 9, 2023
Merged

Conversation

guillep
Copy link
Member

@guillep guillep commented Aug 7, 2023

Fix crash when iterating the ephemeron list during scavenge.
Iterating the ephemeron list can add new entries in the ephemeron list during iteration.
In that case, it may happen that when treating first entry, it is removed from the head and its tracing discovers a new ephemeron. This changes the head of the list and confuses the iteration.

  • Make sure that the iterated list does not get modified
  • cleanup some dead code
  • fix some assertions on the go

@guillep guillep requested a review from tesonep August 7, 2023 15:20
Copy link
Collaborator

@tesonep tesonep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can remove the code duplication in the P12 branch with the trait

@guillep
Copy link
Member Author

guillep commented Aug 9, 2023

PR is ok except for windows!

I'll merge and prepare a release

@guillep guillep merged commit de1e707 into pharo-project:pharo-10 Aug 9, 2023
1 check passed
@guillep guillep deleted the fix/ephemeron-list branch August 9, 2023 07:42
@guillep guillep mentioned this pull request Sep 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants