Update copyright date.
Remove comment header blurb from ios files.
Add -o option for mutool show.

Windows doesn't like redirecting binary output, so add an explicit
filename argument.
Bug 694878: Fix SEGV due to double free

When constructing a filter chain, we pass ownership of 'chain' inwards.
This means we need to be careful not to double close chain.

This fixes:

 5df97f8539d31745f1c45cc9e1468825_asan_heap-oob_a59afe_1862_225.pdf
 a736faf6f4a34b7ad8eff207ba52aa57_asan_heap-oob_a59dd9_5744_4860.pdf

Thanks to Mateusz Jurczyk and Gynvael Coldwind of the Google Security
Team for providing the fuzzing files.
prevent two further heap access violations

pdf_open_raw_renumbered_stream and pdf_open_image_stream both have the
same issue that 98a111c8e49916f8f5ac21d11f4627540f9ddd49 fixes.
Add tiling into the DirectX printing code.

The tiling in x and y is needed to ensure that we can print at high
resolutions with devices that have smaller bit map sizes (e.g. the surface).
Banding only in the y dimension like we often do is not sufficient.

Also fix an open with file association bug that must of occurred with the
transition to 8.1

And update WinRT solution for recent changes in mupdf code.   This includes
the addition of a few new files and the document type registration.
Fix build_filter_chain not to leak if pdf_array_get fails.

In the existing code, if build_filter fails, chain will be freed. If
pdf_array_get fails however, it will leak.

Rectify this. No specific bug or example file, just observation arising
from discussions about previous commit.
Bug 694879: Fix SEGV in draw-simple-scale.

Problems caused by the fact that -0x8000000 = 0x80000000.

Sidestep the problem for all coords where floats cannot accurately
represent them.
Bug 694885: Avoid stack overflow in ps_run.

The ifelse and if operators require special parsing where we convert
ps function streams to bytecode. If a malformed stream presents
if or ifelse without being preceded by the appropriate { ...} blocks
then throw an error.

This avoids us potentially calling ps_run recursively in an infinite
loop as happens with the test file in this bug.

5f091df77f6600d0927dc36777db2b93_signal_sigabrt_7ffff6d59425_6762_5545.pdf

Thanks to Mateusz Jurczyk and Gynvael Coldwind of the Google Security
Team for providing the fuzzing files.
Solve SEGV in mutool clean with fuzzed file.

While attempting to debug a valgrind issue with:

  013b2dcbd0207501e922910ac335eb59_asan_heap-oob_a59696_5952_500.pdf

I found that mutool -difggg on it failed with a SEGV. This is due to
us parsing an array with a large invalid indirection in it (e.g.
[123456789 0 R]) and then the renumbering code assuming this is valid
and accessing off the end of an array.
iOS: on iPhone use custom buttons to accommodate shortage of space

Otherwise, in portrait mode, there isn’t enough room for all five buttons
and some are not displayed.
iOS: better structure the page update code
iOS: correctly handle document changes that may affect several pages

Interaction with forms may change several pages, so all pages currently
represented by view need updating.
Bug 694889: Fix valgrind issues due to empty indexed spaces.

If indexed spaces are empty (or truncated) we use garbage values when
they are read. Spot this and pad with 0s to at least be consistent.

Fixes:

  013b2dcbd0207501e922910ac335eb59_asan_heap-oob_a59696_5952_500.pdf
  5440f8bc8af12e5f7050e59b7ee008cd_asan_heap-oob_a59dd9_5952_500.pdf
  fa8c712b03a7b02d6a12856ce042a44e_signal_sigsegv_a59b06_5847_493.pdf

Thanks to Mateusz Jurczyk and Gynvael Coldwind of the Google Security
Team for providing the fuzzing files.