Add pdfBugEnabled to the default preferences
Disable the developer hash parameters by default in PRODUCTION builds of PDF.js
Zero the height and width of the WebGL canvases on cleanup
Improving CanvasPixelArray polyfill for Android
Faster chunkedStream_getByte()
Prevent CMapFactory.create from failing by passing the necessary parameters from PartialEvaluator_readToUnicode (issue 5010)
A few small optimizations for CIDFontType2 fonts

Cache a constant length and replace one usage of |in| with a comparison against undefined.
A few small optimizations of adjustMapping

Replace a couple of |in| checks with comparisons against undefined.
use getBytes() instead of looping over getByte()
Merge pull request #5004 from CodingFabian/issue-5002

Improving CanvasPixelArray polyfill for Android
Improve how DecodeStream handles empty buffers.

DecodeStream currently initializes its |buffer| field to |null|, which
is reasonable, because lots of DecodeStreams never need to instantiate a
buffer. But this requires various special cases in the code.

This patch change it so DecodeStreamClosure has a single empty
Uint8Array which gets shared between all buffers upon initialization.
This avoids the special cases.

DecodeStream.prototype.ensureBuffer() is really hot, and this removes a
test from the fast path. For one 226 page scanned document this sped up
rendering by about 2%.
Make QueueOptimizer easier to read.

QueueOptimizer is really hard to read. Enough so that it's blocking my
efforts to streamline the representation used for operator lists.

This patch improves its readability in the following ways.

- More descriptive variable names make the sequence checking much clearer,
  as do additional comments.

- The addState() functions now return the index of the first op past the
  sequence, instead of setting context.currentOperation to the last op of
  the sequence.

- The loop in optimize() is clearer.

- The array modification in the fourth addState() function is much clearer
  -- we're just removing trios of ops.

- All four |addState| functions are now more consistent with each other.

I used some debug printfs to find documents where these optimizations are
used and then checked that the number of optimized ops was the same before
and after my changes.
Memory optimzation for constructPath
[CIDFontType2] Map characters missing in toUnicode to the private use area (bug 1028735 and issue 4881)
Added units for lengths
Merge pull request #5000 from pramodhkp/memop

[SVG] Optimization of constructPath & Adds unit lengths
Avoid creating intermediate strings in Util.makeCssRgb().

On one example (the Wuppertal map) this avoids the creation of over
230,000 intermediate strings.
Add |fillRgb| method to LabCS
Merge pull request #5017 from Snuffleupagus/bug-1028735

[CIDFontType2] Map characters missing in toUnicode to the private use area (bug 1028735 and issue 4881)
Merge pull request #5025 from nnethercote/share-zero-length-buffers

Improve how DecodeStream handles empty buffers.