summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-03-29bmp: Parse component bitmasks correctly.Sebastian Rasmussen
* The component bitmasks in the header are only valid for bitfields compression * The extra component bitmasks are only present if using bitfields compression and for 16-/32-bit images if not already present in header
2016-03-29bmp: Fix typo in bitmask comparison.Sebastian Rasmussen
2016-03-29bmp: Fix typo in end of input data check.Sebastian Rasmussen
The rle8 encoding already uses the same comparison
2016-03-29bmp: Fix typo in supported bits per pixel check.Sebastian Rasmussen
2016-03-29Tweak html-layout harfbuff code to placate gcc.Robin Watts
gcc whines about strict-aliasing rules. Tweak the code to avoid them. Short version = gcc dislikes accessing the same memory through different typed pointers unless they are void * or char *.
2016-03-28Label blocks that Harfbuzz leaks as leaked.Robin Watts
Tell Memento to treat all blocks allocated within given harfbuzz calls as being leaks.
2016-03-28Memento: Add facility to cope with 'known' leaked blocks.Robin Watts
Harfbuzz allocates blocks that it keeps around as statics. There are a finite number of these, and they are never freed (at least not in the build we use). Having Memento report them as leaks is a pain. So we extend Memento so that we can label blocks as being leaks, and thus never have to be bothered by them.
2016-03-28Strengthen Harfbuzz code against outside use.Robin Watts
2016-03-28Add missing hb_lock/unlock around shaper freeing.Robin Watts
This was causing blocks to be free'd rather than fz_free'd.
2016-03-28MSVC: More solution tweaking.Robin Watts
Avoid library warnings when including libfonts.
2016-03-28Fix fz_try typo in openssl code.Robin Watts
2016-03-26Memento: Cope with wrapped blocks.Robin Watts
If another routine 'wraps' memento blocks (such as a chunk allocator or the 'trace' allocator in mudraw), then the address passed to Memento_label, Memento_takeRef etc, can be inside the block rather than at the start of the block. Update Memento to cope with this.
2016-03-25Fix PS output banded mode operation.Robin Watts
2016-03-25Refactor pcl output to work in bands.Robin Watts
2016-03-25Tweak the PCL page size handling/options.Robin Watts
Introduce a 'generic' PCL setting (basically ljet4 with custom page sizes for now). Ensure we send explicit sizes before the custom page sizes, and don't use Ricoh page sizes unless we are allowed to.
2016-03-25Add 24 bit RGB PCL output mode.Robin Watts
Output uses adaptive compression mode.
2016-03-25Add optimised cmyk image plotters.Robin Watts
2016-03-25Optimise fz_paint_solid_color_5Robin Watts
2016-03-25Rename ARCH_ARM_CAN_LOAD_UNALIGNED to be ARCH_UNALIGNED_OKRobin Watts
Now covers non-ARM arch's too, and both load/stores.
2016-03-25More ARM code thresholding work.Robin Watts
Fix do_threshold_1 and implement do_threshold_4. do_threshold_1 checks for white and shortcuts the work if it can. There are 2 ARM variants of do_threshold_4. One for ARMs that support unaligned loads, and one for the (rare configurations) that don't. The former checks for white and shortcuts the work.
2016-03-25Speed CMYK pixmap clearing.Robin Watts
Both C and ARM versions. ARM version is noticably faster than C version.
2016-03-24MSVC: Add in missing font.Robin Watts
I missed a font while reworking the generate.bat font generation.
2016-03-23Fix font builds on raspberry piRobin Watts
(And presumably other platforms). .align is broken - on some archs it wants the padding size, on others (like ARM) it wants log2(padding size). Use .balign which is consistent. Avoid using @ or # as these are comment chars on some archs. Use the STT_OBJECT form instead.
2016-03-23js: Create 'argv' global containing arguments passed to mutool run.Tor Andersson
2016-03-23js: Add some low level document object access.Tor Andersson
pdf.createObject() will create a new (blank) object and return an indirect reference to it. This wraps pdf_create_object. ref.writeObject(obj) will update the object pointed to. This wraps pdf_update_object.
2016-03-23Fix declaration after statements.Tor Andersson
2016-03-23Fix MSVC builds.Robin Watts
Update generate.bat to generate generate/fontname.c files rather than generate/fontname.{ttc,ttf,cff} etc. Add a new libfonts target that builds those, and make libmupdf depend on it. Fix build problem in load-bmp.c - don't declare in the middle of blocks.
2016-03-23Exclude AndroidDrawDevice from the Android app build.fredrossperry
2016-03-23Don’t include openssl by default in the OS X build.fredrossperry
2016-03-23Bug 696630: Avoid needless (and potentially wrong) dereference.Robin Watts
2016-03-23Tweak Memento to avoid suprious valgrind warnings.Robin Watts
2016-03-23Include harfbuzz C++ files in 'make tags'.Tor Andersson
2016-03-23Add support for BMP images.Sebastian Rasmussen
2016-03-23Clamp too large image resolution values.Tor Andersson
2016-03-23Remove internal do/while braces in fz_try macros.Tor Andersson
This has caught a couple of oddities...
2016-03-23Compile embedded fonts in separate C files.Tor Andersson
Also change unsigned char into const char for embedded data.
2016-03-23Mudraw: Enable banded operation for pkm.Robin Watts
All the groundwork was in place for this, I'd just forgotten to actually enable it.
2016-03-23Update halftoning to use shorter line buffer.Robin Watts
Use the LCM of the different tile widths rather than a complete line copy. This should play better with caches on devices like the pi.
2016-03-23ARM code do_threshold_1Robin Watts
No clever SIMD tricks.
2016-03-22Optimise the C for do_threshold_1.Robin Watts
Simple unrolling.
2016-03-22Remove dead code.Robin Watts
2016-03-22Tweak paint-glyph.hRobin Watts
Try to limit aliasing issues.
2016-03-22Add Google Perf Tools build.Robin Watts
"make build=gperf" will now build and link the google perf tools library into mutool. When mutool is then run, a mutool.prof file is dropped into the current directory that can be analysed.
2016-03-21Bug 696668: Update the downscaling logic.Robin Watts
An l2factor of 3 is equivalent to downscaling by a factor of 8. We can get an l2factor of 3 downscale out of the jpeglib. We can reasonably downscale by a further l2factor of 3 manually. Any more than that and we start to completely drop pixels without them having any effect. Therefore it's pointless us keeping any tiles around with l2factors > 6. Fix the bug (which was that we were using < instead of <=) and update the value to a more reasonable one anyway.
2016-03-21Tweak NULL output code.Robin Watts
In the quest for better mutool draw timings, make fz_outputs going to /dev/null be represented by a NULL pointer. Spot this in the output routines and just exit.
2016-03-21Mudraw: Avoid reopening output files.Robin Watts
It makes a strangely large difference in timings if we close and reopen the output file for every page. Only close and reopen the output file for each page if we really need to.
2016-03-21Add .ps output to mutool draw.Robin Watts
Simple PS wrapped images with flate compression.
2016-03-21Update freetype to version 2.6.3.Tor Andersson
2016-03-21jni: Use system freetype and zlib.Tor Andersson
AWT pulls in the system freetype library, which in turn pulls in system zlib. Avoid symbol collisions and possible header/library conflicts by using the system libraries for desktop java builds.
2016-03-21Allow building with old versions of freetype.Tor Andersson
Debian stable still ships with freetype 2.5.2. We normally wouldn't care, but desktop java builds need to use the system freetype library as that's what AWT links against.