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 infinite loop in ThemeIcons when icon #blank is missing #15570

Merged
merged 1 commit into from
Nov 27, 2023

Conversation

Rinzwind
Copy link
Contributor

This pull request fixes ThemeIcons to take into account that the icon named #blank could be missing. Due to the changes in pull request #15399, that can currently lead to an infinite loop as #blankIconFormSet sends #iconFormSetNamed: which in turn uses #blankIconFormSet as a fallback when #isReportingNotFound is false. I encountered the loop while backporting that pull request and some others to Pharo 11: when loading the backport there is a point at which all icons are temporarily missing due to the replacement of the instance variable ‘icons’ by ‘iconsPerScale’.

I’m wondering though whether it wouldn’t be better to make #iconFormSetNamed: always use #notFoundIconFormSet when an icon is missing, with #isReportingNotFound just determining whether or not that also gets logged on the transcript.

…t 0@0 instead of the #blankIconFormSet when the symbol is #blank to avoid an infinite loop.
@jecisc jecisc merged commit 41e6931 into pharo-project:Pharo12 Nov 27, 2023
1 of 2 checks passed
Rinzwind added a commit to Rinzwind/pharo that referenced this pull request Nov 27, 2023
…loop in ThemeIcons when icon #blank is missing”) to Pharo 11.
@Rinzwind Rinzwind deleted the fix-missing-blank-icon-loop branch March 29, 2024 11:40
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.

None yet

2 participants