Wox-launcher/Wox · error · SystemExit

{path} must be an 8-bit non-interlaced RGBA PNG

Error message

{path} must be an 8-bit non-interlaced RGBA PNG

What it means

Error "{path} must be an 8-bit non-interlaced RGBA PNG" thrown in Wox-launcher/Wox.

Source

Thrown at assets/linux/write_hicolor_icons.py:51

    """Decode an 8-bit RGBA PNG into raw pixels."""
    data = path.read_bytes()
    if not data.startswith(b"\x89PNG\r\n\x1a\n"):
        raise SystemExit(f"{path} is not a PNG file")

    width = height = None
    idat = bytearray()
    offset = 8
    while offset < len(data):
        length = struct.unpack(">I", data[offset : offset + 4])[0]
        offset += 4
        kind = data[offset : offset + 4]
        offset += 4
        payload = data[offset : offset + length]
        offset += length + 4
        if kind == b"IHDR":
            width, height, bit_depth, color_type, compression, filter_method, interlace = struct.unpack(">IIBBBBB", payload)
            if bit_depth != 8 or color_type != 6 or compression or filter_method or interlace:
                raise SystemExit(f"{path} must be an 8-bit non-interlaced RGBA PNG")
        elif kind == b"IDAT":
            idat.extend(payload)
        elif kind == b"IEND":
            break

    if width is None or height is None:
        raise SystemExit(f"{path} is missing a PNG header")

    raw = zlib.decompress(bytes(idat))
    rgba = bytearray(width * height * 4)
    previous = bytearray(width * 4)
    source_offset = 0
    target_offset = 0
    for _ in range(height):
        filter_type = raw[source_offset]
        source_offset += 1
        row = bytearray(raw[source_offset : source_offset + width * 4])
        source_offset += width * 4

View on GitHub (pinned to 1659730fcb)

When it happens

Trigger: Thrown at assets/linux/write_hicolor_icons.py:51 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Wox-launcher/Wox@1659730fcb (2026-08-15). Data as JSON: /api/errors/1e19e90183d87db8. Report an issue: GitHub.