summaryrefslogtreecommitdiff
path: root/source
AgeCommit message (Collapse)Author
2016-10-06Hide internals of fz_colorspaceRobin Watts
The implementation does not need to be in the public API.
2016-10-06Bug 697159: Fix memory leak in CBZ error handling.Robin Watts
If we fail to open a CBZ page, we were dropping the CBZ specific part, but not the fz_page part.
2016-10-06Only build murun if we have mujs enabled.Robin Watts
Otherwise we were tripping over the lack of the header file.
2016-10-06Squash warnings in cluster builds.Robin Watts
2016-10-06Update Xref reading code to cope with 19 byte entries.Robin Watts
The spec says entries should be 20 bytes long. In practise we see 19 byte long ones more often than we like. This is due to the use of a single EOL char rather than 2. The PCLm files I've seen use 19 byte ones, so update the code to cope with these.
2016-10-06Bug 697194: Document -gggg in muclean.Robin Watts
2016-10-06Bug 697182: Fix memory leak in html-layout.Robin Watts
Only create a text object if we are definitely going to use it, and then take care of exceptions being thrown.
2016-10-05Bug 697177: Avoid SEGV in Epub file.Robin Watts
Thanks to Vlad Glagolev for the example file, analysis and patch. We had failed to initialise the "last break class" value, so that when we use it as an index into an array, we run the risk of crashing. The fix is simply to initialise it. By initialising it to OP we don't allow any softbreaks to be added when it's uninitialised, which feels right to me.
2016-10-05Add a const to a lookup function.Robin Watts
2016-10-05Simplify fz_new_type3_fontRobin Watts
Call fz_calloc rather than fz_malloc_array and then manually clearing.
2016-10-05Uncouple font shaper data from harfbuzz.Robin Watts
The fz_font structure now doesn't know anything about harfbuzz at all, it merely offers an abstract 'fz_shaper_data_t' entry.
2016-10-05Move fz_font definition to be private.Robin Watts
Move the definition of fz_font to be in a private header file rather than in the public API. Add accessors for specific parts of the structure and use them as appropriate. The font flags, and the harfbuzz records remain public. This means that only 3 files now need access to the font implementation (font.c, pdf-font.c and pdf-type3.c). This may be able to be improved further in future.
2016-09-27Fix typo in fz_valgrind_pixmapRobin Watts
Function exists purely for doing valgrind testing of pixmap definedness.
2016-09-28tiff: Do not clobber input buffer if fill order is reversed.Sebastian Rasmussen
2016-09-28tiff: Do error handling for decoders in a single place.Sebastian Rasmussen
2016-09-28tiff: Validate that tag/tile/strip offsets are within bounds.Sebastian Rasmussen
2016-09-28Bug 697166: tiff: Avoid freeing offset/bytecount arrays twice.Sebastian Rasmussen
2016-09-28Bug 697165: tiff: Do not allow duplicate array tags.Sebastian Rasmussen
Previously this caused a memory leak.
2016-09-28Bug 697155: tiff: Drop stream if compression is unknown.Sebastian Rasmussen
m5-299787ea764c0a88bc481364eded5556.tif
2016-09-28Bug 697157: tiff: Rational tag denominators may not be zero.Sebastian Rasmussen
2016-09-28Bug 697156: tiff: Free tile arrays after use.Sebastian Rasmussen
2016-09-28Bug 697154: tiff: Detect error when decoding strip/tile data.Sebastian Rasmussen
2016-09-27Bug 697153: tiff: Image dimensions must always be bigger than 0.Sebastian Rasmussen
2016-09-27Bug 697152: jpeg: Use correct macro to get client data.Sebastian Rasmussen
In commit 6a8abce9603f69b57e407f0df4044be919f507d7 an agnostic memory handler was introduced for libjpeg. While this commit changed error_exit_dct() it forgot to make a similar change in error_exit().
2016-09-27Bug 697163: gif: Fix integer overflow in image dimensions.Sebastian Rasmussen
2016-09-27Bug 697162: gif: Color index must be inside color table.Sebastian Rasmussen
2016-09-27Bug 697161: gif: Frames may not be bigger than the image.Sebastian Rasmussen
2016-09-27Bug 697160: gif: Transparency index must be inside color table.Sebastian Rasmussen
2016-09-26Update OpenJPEG to the latest (git) version.Robin Watts
Part of the change in this code is to require opj_malloc and co. Sadly, opj_malloc and co do not take a context field, so a we need to wrap calls to openjpeg with a lock. I am reusing the freetype lock here for simplicity.
2016-09-27tiff: Fix typo in thunder decoder.Sebastian Rasmussen
2016-09-26tiff: Support tiled images.Sebastian Rasmussen
2016-09-26tiff: Estimate uncompressed strip sizes if missing.Sebastian Rasmussen
2016-09-26tiff: Reorganize code, preparing for tiled image support.Sebastian Rasmussen
2016-09-26tiff: Add support for thunder decoding.Sebastian Rasmussen
2016-09-26tiff: Support flate compression under differnent name.Sebastian Rasmussen
2016-09-26tiff: Support images with 2 and 16 bits per palette color.Sebastian Rasmussen
2016-09-26tiff: Support images using Lab colorspace.Sebastian Rasmussen
2016-09-26gif: If decompression fails, don't rely on uninitialized buffer data.Sebastian Rasmussen
2016-09-26gif: Use frame size when parsing a frame, not size of entire image.Sebastian Rasmussen
2016-09-26pnm: Interpret b/w image colors correctly.Sebastian Rasmussen
2016-09-26Fix memory leak when opening html/loading raw stream.Sebastian Rasmussen
2016-09-23GProof: Fix typos in gs invocationRobin Watts
2016-09-23Fix leak in error case of pdf_add_stream.Robin Watts
2016-09-23Clean up annotation enum names.Tor Andersson
Put them in the PDF name space and separate words with underscores. Remove redundant namespace prefixes in java constants. Device.FLAG_MASK rather than Device.FZ_DEVFLAG_MASK. Use namespace for PDF annotation flag enum.
2016-09-23Check for buffer overflow in strtod ascii division.Tor Andersson
2016-09-23Fix warning: set but unused variable.Tor Andersson
2016-09-22GPROOF: Modify gs invocation.Michael Vrhel
If we get the print profile given as '<EMBEDDED>' then use the print profile (Output Intent) embedded in the file. If not, we continue to use the defaults if given the empty string, or the given file otherwise.
2016-09-22tools: Prefer fz_atof() to atof().Sebastian Rasmussen
2016-09-22GProof: When invoking gs, redirect gs stdio to local stderr.Robin Watts
For android this means it will go to our logging. This moves the code out of gs.
2016-09-22Bug 697015: Avoid object references vanishing during repair.Robin Watts
A PDF repair can be triggered 'just in time', when we encounter a problem in the file. The idea is that this can happen without the enclosing code being aware of it. Thus the enclosing code may be holding 'borrowed' references (such as those returned by pdf_dict_get()) at the time when the repair is triggered. We are therefore at pains to ensure that the repair does not replace any objects that exist already, so that the calling code will not have these references unexpectedly invalidated. The sole exception to this is when we replace the 'Length' fields in stream dictionaries with the actual lengths. Bug 697015 shows exactly this situation causing a reference to become invalid. The solution implemented here is to add an 'orphan list' to the document, where we put these (hopefully few, small) objects. These orphans are kept around until the document is closed.