Skip to content

fix: suppress fromIccProfile Qt warning flood on startup#554

Merged
azfoo merged 1 commit into
devfrom
fix/suppress-icc-profile-warning
Jul 20, 2026
Merged

fix: suppress fromIccProfile Qt warning flood on startup#554
azfoo merged 1 commit into
devfrom
fix/suppress-icc-profile-warning

Conversation

@FelipeDefensor

Copy link
Copy Markdown
Collaborator

Problem

On macOS, running TiLiA floods the log with hundreds of:

[QtWarningMsg] None:0 - fromIccProfile: Failed to parse description

They appear at startup, before any file or user content is loaded.

Root cause

The message comes from QtGui's ICC parser (category qt.gui.icc), not
from any TiLiA asset — all bundled icons are SVG and carry no ICC profile.
Qt reads the display colour profile that macOS provides and fails to
parse its desc (description) tag. The parse is repeated once per native
window/widget
, so a single QMainWindow already yields ~17 lines; TiLiA's
main window plus its dock widgets and toolbars turn that into a flood.

Isolated on a real cocoa display:

Setup fromIccProfile lines
bare QApplication 1
QIcon.fromTheme('tilia') 1
QApplication + QMainWindow.show() 17
QWebEngineView 1

The warning is purely cosmetic — the images render correctly. There is
nothing to strip: the profile belongs to the user's monitor, not to a file
TiLiA ships or loads.

Fix

Add the message to QT_LOG_NOISE_PATTERNS in boot.py, so the existing Qt
log handler drops it — the same treatment already applied to other harmless
Qt rendering noise (QFont::setPixelSize, GetGlyphRunOutline). Filtering
is by message substring, so it is source-agnostic.

Tests

Added "fromIccProfile: Failed to parse description" to the parametrized
test_known_noise_warning_is_suppressed case. TestHandleQtLogMessage
passes (14 tests); ruff + black clean.

🤖 Generated with Claude Code

Qt's ICC parser can't read the description tag of the macOS display
colour profile and re-parses it for every native window, flooding the
log with "fromIccProfile: Failed to parse description" on startup.

Add the message to QT_LOG_NOISE_PATTERNS so the Qt log handler drops it,
matching the existing treatment of other harmless Qt rendering noise.
@FelipeDefensor FelipeDefensor added this to the 0.6.4 milestone Jul 8, 2026
@azfoo
azfoo merged commit 37a249f into dev Jul 20, 2026
11 checks passed
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