Attach (recommended) or Link to PDF file here: [A3_Quer.pdf](https://github.com/mozilla/pdf.js/files/7373152/A3_Quer.pdf)


**Configuration:**

- Web browser and its version: Firefox 93.0
- Operating system and its version: macOS 11.6
- PDF.js version: 2.5.207
- Is a browser extension: no

**Steps to reproduce the problem:**
1. Open the attached file in Firefox

We discovered this issue in on older version of this library, but it can be reproduced in the current version of Firefox.

**What is the expected behavior? (add screenshot)**
The file should be rendered with a linear gradient as a background:
![Bildschirmfoto 2021-10-19 um 14 34 00](https://user-images.githubusercontent.com/8649002/137910027-07947e34-700b-4692-b225-d38c36da0d37.png)


**What went wrong? (add screenshot)**
The file is rendered without any background:
![Bildschirmfoto 2021-10-19 um 14 35 05](https://user-images.githubusercontent.com/8649002/137910215-a6b8fb9e-ff95-49f0-93b4-c9f127bd49c1.png)



**Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):**
none
buffer = (buffer << 8) | this.stream.getByte();
      bufferLength += 8;
    }
    bufferLength -= n;
    this.bufferLength = bufferLength;
    this.buffer = buffer & ((1 << bufferLength) - 1);
    return buffer >> bufferLength;
  }
  align() {
    this.buffer = 0;
    this.bufferLength = 0;
  }
  readFlag() {
    return this.readBits(this.context.bitsPerFlag);
  }
  readCoordinate() {
    const bitsPerCoordinate = this.context.bitsPerCoordinate;
    const xi = this.readBits(bitsPerCoordinate);
    const yi = this.readBits(bitsPerCoordinate);
    const decode = this.context.decode;
    const scale =
      bitsPerCoordinate < 32
        ? 1 / ((1 << bitsPerCoordinate) - 1)
        : 2.3283064365386963e-10; 
    return [
      xi * scale * (decode[1] - decode[0]) + decode[0],
      yi * scale * (decode[3] - decode[2]) + decode[2],
    ];
  }
  readComponents() {