DevNews

Wine 11.15: IStream support and the washed-out colors fix

On this page
  1. The named fixes
  2. Why encoding twice lightens a gray
  3. Build support is another, separate change

The useful detail in a Wine bug fix is the interface or rendering path it changes. A release-wide bug count does not tell you whether your application uses that path.

Calculated sRGB gray: linear 0.18 encodes to about 0.461. Incorrectly encoding that value again gives about 0.709, shown as a lighter sRGB swatch. Original mathematical illustration, not a Wine screenshot or display measurement.
Calculated sRGB gray: linear 0.18 encodes to about 0.461. Incorrectly encoding that value again gives about 0.709, shown as a lighter sRGB swatch. Original mathematical illustration, not a Wine screenshot or display measurement. Chart : PeopleAreGeek. Data source.
View full-size image

The named fixes

The tagged Wine 11.15 announcement lists 41 fixed bugs. Number 4811 concerns querying XMLDOMDocument for IStream; the change list adds document-stream support and tests. That is more precise than calling it a generic XML failure.

The notes also list the Wayland/EGL double-sRGB problem and the offset of fixed-resolution 4:3 fullscreen applications. They describe a development release, not an update to the stable branch. A fix in one path does not mean every Wine application on a Wayland desktop previously suffered that defect.

Why encoding twice lightens a gray

Our illustration uses the sRGB conversion described in the W3C color-conversion reference. For the example’s values, encoding a linear channel x uses 1.055 × x^(1/2.4) - 0.055.

Start with a linear gray channel of 0.18. One encoding gives approximately 0.461. If that already encoded value is incorrectly treated as linear and encoded again, it becomes approximately 0.709. The cover shows the resulting sRGB swatches and numbers. This is an original mathematical illustration, not a captured Wine bug or a measurement of a particular display.

The two swatches explain the direction of the error, while correct diagnosis still requires knowing the framebuffer and conversion path. Changing a monitor’s brightness could disguise a symptom without fixing the duplicate operation.

Build support is another, separate change

The release adds ARM64EC builds in MinGW mode. Microsoft’s ARM64EC documentation explains the ABI’s interoperability with x64 code within a process. Compiler support does not independently establish that every dependency or Windows application now works on every ARM host.

For a targeted trial, keep the application version, Wine prefix, display backend and reproduction steps fixed. Check the exact failure, then compare the same document or frame after changing Wine versions. A historical bug being closed is encouraging; the practical result is whether the corrected interface solves the workflow that actually failed.

September 8: verify tagged release notes and exact IStream fix; explain double sRGB encoding with calculated values, avoid blanket Wayland and ARM compatibility claims.