Skip to content

CRITICAL: ZLIB compression system-wide failure causes massive PNG bloat and corruption #963

@krystophny

Description

@krystophny

CRITICAL USER FUNCTIONALITY FAILURE

ZLIB compression system has completely failed across all PNG generation, causing:

Evidence of System-Wide Failure

File Size Corruption:

  • Normal PNG files should be 10-50KB for basic plots
  • Current PNG files: 1,440,774 bytes (1.4MB) for simple_plot.png
  • Animation frames: 922,219 bytes (922KB) each × 60 frames = 55MB
  • Repository artifact pollution: 35+ corrupt PNG files in root directory

ZLIB Corruption Pattern:

  • PNG IDAT chunks contain: 00 ff ff 00 00 followed by all 0xFF bytes
  • Indicates ZLIB is writing uncompressed/invalid data blocks
  • Zero compression occurring - data written as raw uncompressed streams

User Impact:

  • All PNG backend functionality produces massive files
  • Animation system completely broken (261-byte MP4 with 0 streams)
  • FFmpeg cannot process corrupt PNG frames (inflate error -3)
  • Repository becomes unusable due to massive artifact accumulation
  • Storage consumption 100x normal levels

Reproduction

  1. Run make example
  2. Check any PNG file: ls -la output/example/fortran/basic_plots/simple_plot.png
  3. Expected: ~20KB, Actual: 1,440,774 bytes
  4. Hexdump PNG: corrupt IDAT chunks with invalid ZLIB data

System Impact

Animation System Broken:

PNG Backend Completely Compromised:

  • All PNG outputs 50-100x normal size
  • Invalid compression data breaks external tool integration
  • Storage and performance catastrophic impact

Immediate Actions Required:

  1. Emergency ZLIB compression module audit
  2. Rollback to working ZLIB implementation
  3. PNG output format validation
  4. Animation pipeline repair

Priority: CRITICAL - Core raster backend functionality completely broken

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions