summaryrefslogtreecommitdiff
path: root/source/fitz
AgeCommit message (Collapse)Author
2013-07-25Bug 694402: Fix various SVG output problemsRobin Watts
Images were missing a space, hence giving errors. SVG text gets confused by leading (and repeated) whitespace, so elide it.
2013-07-24Fix memory overwrites when plotting glyphs that are completely clipped.Robin Watts
This bug has been in here for ages, but was masked by a bug in the gel clipping that was fixed by Tor earlier.
2013-07-24Fix MIN/MAX confusion in edge list clipping.Tor Andersson
The case with infinite scissor didn't work.
2013-07-22Bug 694431: Fix potential infinite loop.Robin Watts
Thanks to "willus" for pointing out this problem.
2013-07-19Initial work on progressive loadingRobin Watts
We are testing this using a new -p flag to mupdf that sets a bitrate at which data will appear to arrive progressively as time goes on. For example: mupdf -p 102400 pdf_reference17.pdf Details of the scheme used here are presented in docs/progressive.txt
2013-07-03Update fz_error/fz_warn to output to Debugger window on Win32 too.Robin Watts
Stupid windows debugger doesn't show stdout/stderr anywhere in non console apps, so add code to make errors/warnings visible.
2013-07-03Update Memento to output to debug window on windows.Robin Watts
Windows is stupid and doesn't display stderr/stdout in the debugger. Update Memento so that messages will appear there too.
2013-07-01Bug 694382: Fix use-after-free due to type3 fonts.Robin Watts
Thanks to zeniko for spotting the problem here. Type 3 fonts contain a reference to the resources objects required to render the glyphs. Traditionally these have been freed when the font is freed. Unfortunately, after recent changes, freeing a PDF object requires the pdf_document concerned to still exist. While in most cases the type 3 resources are not used after we have converted the type3 glyphs to display lists, this is not always the case. For uncachable Type 3 glyphs (such as those that do not completely define elements in the graphics state that they use, such as color or line width), we end up running the glyphs at interpretation time. [ Interpretation time = when doing a direct render on the main thread, or when creating a display list - so also on the main thread. No multi-threading issues with file access here. ] The fix implemented here is for each pdf document to keep a list of the type3 fonts it has created, and to 'decouple' them from the document when the document is destroyed. The sole effect of this decoupling is to remove the resources (and the PDF operator buffers) from the font. These are only ever used during interpretation, and no further interpretations are possible without the document being alive anyway, so this should have no net effect on operation, other than allowing cleanup to proceed cleanly later on.
2013-06-28Modify FZ_NORETURN to work on MSVC too.Robin Watts
We need to have it as a prefix, not a postfix now, but it should work on both gcc and MSVC now.
2013-06-27Bug 694382: Fix problems arising from recent pdf_obj changes.Robin Watts
Thanks to zeniko for spotting these problems. When we close a document, purge the glyph cache to ensure that no type3 glyphs hang around with pointers to pdf_obj's that are now gone. Pass doc to pdf_new_obj_from_str rather than NULL. We believe that the reason this needed to be NULL is no longer valid. Also, revert to using an int for ref counts. In a quick test of our regression suite we only found 2 files that ever made a refcount > 256 (and they never got larger than 768), but the potential is there for issues. Reverting to an int until we can think of a better idea.
2013-06-26Silence compiler warnings.Tor Andersson
2013-06-21Fix Android builds.Robin Watts
Had to rejig the thumb entry/exit veneers to allow for NDK_PROFILER operation, but this seems to have negated the need for Core2.mk, so removed that here.
2013-06-20Rename fz_image_to_pixmap to fz_new_pixmap_from_image.Tor Andersson
Match our naming conventions.
2013-06-20Rearrange source files.Tor Andersson