In ImfChromaticities.cpp routine RGBtoXYZ(), there are some division operations such as float Z = (1 - chroma.white.x - chroma.white.y) * Y / chroma.white.y; and chroma.green.y * (X + Z))) / d; but the divisor is not checked for a 0 value. A specially crafted file could trigger a divide-by-zero condition which could affect the availability of programs linked with OpenEXR.
The product divides a value by zero.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Openexr | Openexr | 3.1.2 (including) | 3.1.2 (including) |
| Openexr | Ubuntu | bionic | * |
| Openexr | Ubuntu | esm-apps/focal | * |
| Openexr | Ubuntu | esm-apps/jammy | * |
| Openexr | Ubuntu | esm-infra/bionic | * |
| Openexr | Ubuntu | esm-infra/xenial | * |
| Openexr | Ubuntu | focal | * |
| Openexr | Ubuntu | hirsute | * |
| Openexr | Ubuntu | impish | * |
| Openexr | Ubuntu | jammy | * |
| Openexr | Ubuntu | kinetic | * |
| Openexr | Ubuntu | trusty | * |
| Openexr | Ubuntu | upstream | * |
| Openexr | Ubuntu | xenial | * |