Age | Commit message (Collapse) | Author |
|
|
|
|
|
Currently each xref in the file results in an array from 0 to
num_objects. If we have a file that has been updated many times
this causes a huge waste of memory.
Instead we now hold each xref as a list of non-overlapping subsections
(exactly as the file holds them).
Lookup is therefore potentially slower, but only on files where the
xrefs are highly fragmented (i.e. where we would be saving in memory
terms).
Some parts of our code (notably the file writing code that does
garbage collection etc) assumes that lookups of object entry pointers
will not change previous object entry pointers that have been
looked up. To cope with this, and to cope with the case where we are
updating/creating new objects, we introduce the idea of a 'solid'
xref.
A solid xref is one where it has a single subsection record that spans
the entire range of valid object numbers for a file. Once we have
ensured that an xref is 'solid', we can safely work on the pointers
within it without fear of them moving.
We ensure that any 'incremental' xref is solid.
We also ensure that any non-incremental write makes the xref solid.
|
|
pdf_lookup_page_loc_imp currently throws if any object in the page tree
is neither a /Pages node nor a /Page leaf. This unnecessarily rejects
slightly broken documents such as the ones from
https://code.google.com/p/sumatrapdf/issues/detail?id=2582 and
https://code.google.com/p/sumatrapdf/issues/detail?id=2608 .
pdf_count_pages_before_kid currently wrongly throws if a /Pages node
doesn't contain any kids and correctly states so (which even seems to
be permitted by the PDF specification).
|
|
In load_sample_func, the stream is not closed and thus leaked if one of
the fz_read_byte or fz_read_bits calls throws (which might happen e.g.
on a Deflate data error).
In pdf_load_compressed_inline_image, the allocated buffer is not freed
if one of the stream initializers or the tile creation throws
(fz_open_leecher does not take ownership of the stream).
|
|
|
|
These are now generated by Xcode at build time from the asset catalogue,
and the CFBundleIconFiles we had here was upsetting the app store validator.
|
|
All that is necessary is to add a launch xib.
|
|
Still more warnings left.
|
|
unused variables / functions / potential uninitialised variable usage
|
|
|
|
|
|
In MuDocRef initialise. it spotted cases where self could be released
twice after a failure.
|
|
|
|
scrollViewDidEndZooming takes a CGFloat.
|
|
Spotted by xcode6 analyser
|
|
These are private details that, since changes in Xcode, no longer need to
be exposed in the headers.
|
|
In file included from scripts/cmapdump.c:19:
scripts/../source/fitz/ftoa.c:30:23: warning: redefinition of typedef 'ulong' is a C11 feature [-Wtypedef-redefinition]
typedef unsigned long ulong;
^
scripts/../source/fitz/strtod.c:30:23: note: previous definition is here
typedef unsigned long ulong;
^
1 warning generated.
(Apparently in earlier versions of clang this is an error.)
|
|
|
|
|
|
Use the actual ranges from the cpt-to-gid cmap to optimize the
remapping of ToUnicode cmaps from cpt-to-unicode into gid-to-unicode
format.
|
|
|
|
When inverting the CMap to create a ToUnicode, first check the actual
range of input characters rather than relying only on the codespace
range list.
|
|
The dtoa function is for doubles (which is what MuJS uses) but for MuPDF
we only need and want float precision in our output formatting.
|
|
This is required for XPS, as otherwise images can be completely
omitted.
|
|
|
|
|
|
|
|
|
|
Add a whitespace preserving mode, for future use with XHTML.
Also parse XHTML entities. This is not strictly according to spec,
but for properly formed XML documents it should not matter.
|
|
Without this, we fail to find jpeg_cust_mem_init at link time on
Windows.
|
|
|
|
The contents of this folder will contain both winrt and gsview projects
which are shared in a common visual studio 2013 solution.
|
|
The code was doing the proper highlighting but failing to add all but the
first character in the first selected line.
|
|
|
|
|
|
pdf-tools.h is used so that we can call into pdfclean_main.
|
|
|
|
Also fix so that if file open fails we don't retry with that same file when
we launch again. Add manifest so that tile is displayed ok in Windows 8.1.
|
|
The annotation display support that I added had introduced a bug where the
same page may initially get rendered on different threads if you did
rapid scrolling.
|
|
|
|
|
|
|
|
all plus more.
Includes xml, html, text save as, fix issues in window range that determines what
pages are visible at a particular scaling. Fix very tricky to find problem in
interface with gs. Managed code was freeing delegates that were allocated dynamically.
It is not possible to pin these so they are now member variables.
|
|
Also addition of AA on/off control.
|
|
|
|
|
|
or have the wrong one.
|
|
ghostscript.
|
|
|