зеркало из https://github.com/mozilla/pjs.git
09dbfeb0c8
Alan Coopersmith (1): Sun's copyrights belong to Oracle now Alexandros Frantzis (2): Add simple support for the r8g8b8a8 and r8g8b8x8 formats. Add support for the r8g8b8a8 and r8g8b8x8 formats to the tests. Andrea Canciani (14): Improve precision of linear gradients Make classification consistent with rasterization Remove unused enum value Fix an overflow in the new radial gradient code Remove unused stop_range field Fix opacity check Improve conical gradients opacity check Improve handling of tangent circles Add a test for radial gradients Fix compilation on Win32 test: Fix tests for compilation on Windows test: Add Makefile for Win32 Do not include unused headers test: Silence MSVC warnings Cyril Brulebois (2): Fix argument quoting for AC_INIT. Fix linking issues when HAVE_FEENABLEEXCEPT is set. Jon TURNEY (2): Plug another leak in alphamap test Remove stray #include <fenv.h> Rolland Dudemaine (4): test: Fix for mismatched 'fence_malloc' prototype/implementation Correct the initialization of 'max_vx' test: Use the right enum types instead of int to fix warnings Fix "variable was set but never used" warnings Scott McCreary (1): Added check to find pthread on Haiku. Siarhei Siamashka (62): Fixed broken configure check for __thread support Do CPU features detection from 'constructor' function when compiled with gcc ARM: fix 'vld1.8'->'vld1.32' typo in add_8888_8888 NEON fast path ARM: NEON: source image pixel fetcher can be overrided now ARM: nearest scaling support for NEON scanline compositing functions ARM: macro template in C code to simplify using scaled fast paths ARM: performance tuning of NEON nearest scaled pixel fetcher ARM: NEON optimization for scaled over_8888_8888 with nearest filter ARM: NEON optimization for scaled over_8888_0565 with nearest filter ARM: NEON optimization for scaled src_8888_0565 with nearest filter ARM: NEON optimization for scaled src_0565_8888 with nearest filter ARM: optimization for scaled src_0565_0565 with nearest filter C fast path for a1 fill operation ARM: added 'neon_composite_over_n_8_8' fast path ARM: introduced 'fetch_mask_pixblock' macro to simplify code ARM: better NEON instructions scheduling for over_n_8_0565 ARM: added 'neon_composite_over_8888_n_0565' fast path ARM: reuse common NEON code for over_{n_8|8888_n|8888_8}_0565 ARM: added 'neon_composite_over_0565_n_0565' fast path ARM: added 'neon_composite_add_8888_8_8888' fast path ARM: better NEON instructions scheduling for add_8888_8888_8888 ARM: added 'neon_composite_add_n_8_8888' fast path ARM: added 'neon_composite_add_8888_n_8888' fast path ARM: added flags parameter to some asm fast path wrapper macros ARM: added 'neon_composite_in_n_8' fast path ARM: added 'neon_src_rpixbuf_8888' fast path Fix for potential unaligned memory accesses COPYING: added Nokia to the list of copyright holders Revert "Fix "syntax error: empty declaration" warnings." Fix for "syntax error: empty declaration" Solaris Studio warnings Workaround for a preprocessor issue in old Sun Studio Bugfix for a corner case in 'pixman_transform_is_inverse' Make 'fast_composite_scaled_nearest_*' less suspicious A new configure option --enable-static-testprogs ARM: do /proc/self/auxv based cpu features detection only in linux The code in 'bitmap_addrect' already assumes non-null 'reg->data' test: affine-test updated to stress 90/180/270 degrees rotation more New flags for 90/180/270 rotation C fast paths for a simple 90/270 degrees rotation Use const modifiers for source buffers in nearest scaling fast paths test: Extend scaling-test to support a8/solid mask and ADD operation Support for a8 and solid mask in nearest scaling main loop template Better support for NONE repeat in nearest scaling main loop template ARM: new macro template for using scaled fast paths with a8 mask ARM: NEON optimization for nearest scaled over_8888_8_0565 ARM: NEON optimization for nearest scaled over_0565_8_0565 SSE2 optimization for nearest scaled over_8888_n_8888 Ensure that tests run as the last step of a build for 'make check' Main loop template for fast single pass bilinear scaling test: check correctness of 'bilinear_pad_repeat_get_scanline_bounds' SSE2 optimization for bilinear scaled 'src_8888_8888' ARM: NEON optimization for bilinear scaled 'src_8888_8888' ARM: use prefetch in nearest scaled 'src_0565_0565' ARM: common macro for nearest scaling fast paths ARM: assembly optimized nearest scaled 'src_8888_8888' ARM: new bilinear fast path template macro in 'pixman-arm-common.h' ARM: NEON: common macro template for bilinear scanline scalers ARM: use common macro template for bilinear scaled 'src_8888_8888' ARM: NEON optimization for bilinear scaled 'src_8888_0565' ARM: NEON optimization for bilinear scaled 'src_0565_x888' ARM: NEON optimization for bilinear scaled 'src_0565_0565' ARM: a bit faster NEON bilinear scaling for r5g6b5 source images Søren Sandmann Pedersen (79): Remove the class field from source_image_t Pre-release version bump to 0.19.6 Post-release version bump to 0.19.7 Pre-release version bump to 0.20.0 Post-release version bump to 0.20.1 Version bump 0.21.1. COPYING: Stop saying that a modification is currently under discussion. Remove workaround for a bug in the 1.6 X server. [mmx] Mark some of the output variables as early-clobber. Delete the source_image_t struct. Generate {a,x}8r8g8b8, a8, 565 fetchers for nearest/affine images Pre-release version bump Post-release version bump to 0.21.3 test: Make composite test use some existing macros instead of defining its own Add enable_fp_exceptions() function in utils.[ch] Extend gradient-crash-test test: Move palette initialization to utils.[ch] test/utils.c: Initialize palette->rgba to 0. Make the argument to fence_malloc() an int64_t Add a stress-test program. Add a test compositing with the various PDF operators. Fix divide-by-zero in set_lum(). sse2: Skip src pixels that are zero in sse2_composite_over_8888_n_8888() Add iterators in the general implementation Move initialization of iterators for bits images to pixman-bits-image.c Eliminate the _pixman_image_store_scanline_32/64 functions Move iterator initialization to the respective image files Virtualize iterator initialization Use an iterator in pixman_image_get_solid() Move get_scanline_32/64 to the bits part of the image struct Allow NULL property_changed function Consolidate the various get_scanline_32() into get_scanline_narrow() Linear: Optimize for horizontal gradients Get rid of the classify methods Add direct-write optimization back Skip fetching pixels when possible Turn on testing for destination transformation Fix destination fetching Fix dangling-pointer bug in bits_image_fetch_bilinear_no_repeat_8888(). Pre-release version bump to 0.21.4 Post-release version bump to 0.21.5 Print a warning when a development snapshot is being configured. Move fallback decisions from implementations into pixman-cpu.c. Add a test for over_x888_8_0565 in lowlevel_blt_bench(). Add SSE2 fetcher for x8r8g8b8 Add SSE2 fetcher for a8 Improve performance of sse2_combine_over_u() Add SSE2 fetcher for 0565 Add pixman-conical-gradient.c to Makefile.win32. Move all the GTK+ based test programs to a new subdir, "demos" Add @TESTPROGS_EXTRA_LDFLAGS@ to AM_LDFLAGS test/Makefile.am: Move all the TEST_LDADD into a new global LDADD. Add pixman_composite_trapezoids(). Add a test program for pixman_composite_trapezoids(). Add support for triangles to pixman. Add a test program, tri-test Optimize adding opaque trapezoids onto a8 destination. Add new public function pixman_add_triangles() Avoid marking images dirty when properties are reset In pixman_image_set_transform() allow NULL for transform Coding style: core_combine_in_u_pixelsse2 -> core_combine_in_u_pixel_sse2 sse2: Convert all uses of MMX registers to use SSE2 registers instead. sse2: Delete unused MMX functions and constants and all _mm_empty()s sse2: Don't compile pixman-sse2.c with -mmmx anymore sse2: Remove all the core_combine_* functions sse2: Delete obsolete or redundant comments sse2: Remove pixman-x64-mmx-emulation.h sse2: Minor coding style cleanups. Delete pixman-x64-mmx-emulation.h from pixman/Makefile.am Minor fix to the RELEASING file Pre-release version bump to 0.21.6 Post-release version bump to 0.21.7 test: In image_endian_swap() use pixman_image_get_format() to get the bpp. test: Do endian swapping of the source and destination images. In delegate_{src,dest}_iter_init() call delegate directly. Fill out parts of iters in _pixman_implementation_{src,dest}_iter_init() Simplify the prototype for iterator initializers. test: Randomize some tests if PIXMAN_RANDOMIZE_TESTS is set test: Fix infinite loop in composite |
||
---|---|---|
.. | ||
cairo | ||
glitz/src | ||
libpixman | ||
Makefile.in | ||
README | ||
add-a-stash-of-cairo_t-s.patch | ||
bgr.patch | ||
buggy-repeat.patch | ||
cache-size.patch | ||
cairo-qt-compile.patch | ||
cairo-version-fixes.patch | ||
cairo-x-visual.patch | ||
cairo_qt_a8_fallback.diff | ||
cairo_qt_glyphs.patch | ||
clip-invariant.patch | ||
clip-rects-surface-extents.patch | ||
copyarea-with-alpha.patch | ||
d2d.patch | ||
disable-previous-scaled-font-cache.patch | ||
disable-printing.patch | ||
disable-server-gradients.patch | ||
disable-subpixel-antialiasing.patch | ||
dwrite-glyph-extents.patch | ||
empty-clip-extents.patch | ||
empty-clip-rectangles.patch | ||
ensure-text-flushed.patch | ||
fix-cairo-win32-print-gdi-error.diff | ||
fix-clip-copy.patch | ||
fix-clip-region-simplification.patch | ||
fix-clip-test.patch | ||
fix-ps-output.patch | ||
fix-unnecessary-fallback.patch | ||
fix-win32-show-glyphs-clipping.patch | ||
fix-xcopyarea-with-clips.patch | ||
fix-zero-length-gradient.patch | ||
handle-a1.patch | ||
ignore-rank0.patch | ||
max-font-size.patch | ||
missing-cairo-clip-init.diff | ||
native-clipping.patch | ||
nonfatal-assertions.patch | ||
on-edge.patch | ||
pattern_get_surface-no-error.patch | ||
pixman-android-cpu-detect.patch | ||
pixman-component-alpha.patch | ||
pixman-export.patch | ||
pixman-image-transform.patch | ||
pixman-rename-and-endian.patch | ||
premultiply-alpha-solid-gradients.patch | ||
quartz-cache-CGImageRef.patch | ||
quartz-cg-layers-fix-fallback.patch | ||
quartz-cglayers.patch | ||
quartz-check-imageSurfaceEquiv.patch | ||
quartz-const-globals.patch | ||
quartz-create-for-data.patch | ||
quartz-fallback.patch | ||
quartz-first-stop.patch | ||
quartz-fix-PAD.patch | ||
quartz-get-image.patch | ||
quartz-glyph-extents.patch | ||
quartz-is-clear.patch | ||
quartz-layers-content.patch | ||
quartz-mask-non-OVER.patch | ||
quartz-minimize-gradient-repeat.patch | ||
quartz-optimize-OVER.patch | ||
quartz-refactor-surface-setup.patch | ||
quartz-remove-snapshot.patch | ||
quartz-repeating-radial-gradients.patch | ||
quartz-state.patch | ||
surface-clipper.patch | ||
tee-surfaces-pointwise.patch | ||
text-path-filling-threshold.patch | ||
win32-canvas-glyph-position.patch | ||
win32-cleartype-clipping.patch | ||
win32-composite-src-mod.patch | ||
win32-ddb-dib.patch | ||
win32-logical-font-scale.patch | ||
win32-raster.patch | ||
win32-transparent-surface.patch | ||
win32-vertically-offset-glyph.patch | ||
wince-fixes.patch | ||
wrap-source_image.patch | ||
xlib-initialize-members.patch | ||
zero-sized.patch | ||
zombie-face.patch |
README
Snapshots of cairo and glitz for mozilla usage. We only include the relevant parts of each release (generally, src/*.[ch]), as we have Makefile.in's that integrate into the Mozilla build system. For documentation and similar, please see the official tarballs at http://www.cairographics.org/. VERSIONS: cairo (12d521df8acc483b2daa844d4f05dc2fe2765ba6) pixman (2f4f2fb4859931bf6dc5632d8c919e7296736427) ***** NOTE FOR VISUAL C++ 6.0 ***** VC6 is not supported. Please upgrade to VC8. ==== Patches ==== Some specific things: max-font-size.patch: Clamp freetype font size to 1000 to avoid overflow issues win32-logical-font-scale.patch: set CAIRO_WIN32_LOGICAL_FONT_SCALE to 1 nonfatal-assertions.patch: Make assertions non-fatal buggy-repeat.patch: Unconditionally turn on buggy-repeat handling to bandaid bug 413583. cairo-version-fixes.patch: fix up cairo-version.c/cairo-version.h for in-place builds win32-ddb-dib.patch: fix for bug 455513; not upstream yet pending feebdack wince-fixes.patch: stubs out win32 functions we use but are not supported on win32. Also implements ExtSelectClipRgn in terms of other functions available on wince. win32-vertically-offset-glyph.patch: bug 454098; vertical positioning errors when drawing glyph runs including delta-y offsets on screen via GDI ignore-rank0.patch: bug 474886; Not redrawing the background when changing page on flickr win32-canvas-glyph-position.patch: bug 475092; horizontal positioning errors when drawing glyph runs with delta-y offsets to canvas through win32-font win32-cleartype-clipping.patch: bug 445087; some glyphs are clipped, mainly on right-hand edge, when ClearType is enabled and drawing to RGBA canvas on-edge.patch: reverts the in-fill semantic change. wrap-source_image.patch: make sure we don't free the source image until we're done with it. zero-sized.patch: deal with zero sized surface in ways less likely to crash. text-path-filling-threshold.patch: use path filling instead of platform glyph rasterization at a smaller size threshold of 256 device pixels, if the backend supports native filling (which we assume will be fast). zombie-face.patch: bug 486974; leak and possible crash with @font-face{src:url()}. Upstream commit: 0238fe2cafea2e1ed19bb222117bd73ee6898d4d win32-raster.patch: bug 498689; use scanline rasterizer on win32 quartz-falback.patch: try to fix Quartz fallback-to-pixman path; possiby incorrect and obsoleted by Andrea Canciani patch quartz-repeating-radial-gradients.patch: use Quartz to render repeating radial gradients instead of falling back quartz-const-globals.patch: make some Quartz color function data const globals instead of local variables quartz-minimze-gradient-repeat.patch: reduce the number of gradient stop repetitions we use, to improve quality of Quartz's gradient rendering quartz-first-stop.patch: return the first stop for negative positions on the gradient line of a nonrepeating linear gradient quartz-glyph-extents.patch: bug 534260; work around incorrect glyph extents returned by quartz for anomalous empty glyphs quartz-state.patch: bug 522859; refactor cairo-quartz-surface so that state local to a drawing operation is stored in a cairo_quartz_drawing_state_t instead of the surface quartz-cache-CGImageRef.patch: cache CGImageRef for a CGBitmapContext; when we reuse it, Quartz will cache stuff, improving performance quartz-remove-snapshot.patch: remove broken implementation of backend snapshot quartz-cglayers.patch: add support for cairo surfaces backed by CGLayers quartz-cglayers-fix-fallback.patch: Bug 572912; fix bug in fallback code in previous patch quartz-get-image.patch: Bug 575521; add a way to get the image surface associated with a surface quartz-create-for-data.patch: Bug 575521; add a way to create quartz surfaces backed with application-provided data premultiply-alpha-solid-gradients.patch: bug 539165; multiply the solid color by the alpha component before using it for a solid surface xlib-initialize-members.path: bug 548793; initialize XRender version if the server doesn't have the extension remove-comma: remove a comma from enum d2d.patch: add d2d support fix-zero-len-graident.patch: fix zero length gradients fix-clip-copy.patch: fix clip copying fix-clip-region-simplification.patch: fixes a bug in clip region simplifications expand-in-stroke-limits.patch: expand the in-stroke limits to avoid a bug d2d-dwrite.patch: update the d2d/dwrite stuff add-a-stash-of-cairo_t-s.patch: use the stash to avoid malloc/freeing cairo_t's bgr.patch: fix image wrapping disable-server-graidents.patch: disable server-side gradients clip-invariant.patch: make rasterization closer to being clip invariant fix-unnecessary-fallback.patch: avoid unnecessary fallback handle-a1-upload.patch: handle a1 image uploads through converter surface-clipper.patch: remove an incorrect optimization fix-win32-show-glyphs-clipping.patch: fix a clipping bug native-clipping.patch: Add support for a native clipping api quartz-is-clear.patch: Propagate the quartz is_clear flag. cairo-qt-compile.patch: Fix compile error, return not reached, and clone_similar interface dwrite-glyph-extents.patch: Add padding to extents of antialiased glyphs, to avoid unwanted clipping. (bug 568191) fix-ps-output.patch: PS: Add missing 'q' when resetting clip path (42b5cac7668625c9761113ff72b47af5cfd10377) ensure-text-flushed.patch: PDF-operators: ensure text operations flushed before emitting clip (42b5cac7668625c9761113ff72b47af5cfd10377) fix-xcopyarea-with-clips.patch: 5d07307b691afccccbb15f773d5231669ba44f5a cairo-x-visual.patch: make valid visua for cairo_xlib_surface_create_with_xrender_format (55037bfb2454a671332d961e061c712ab5471580) win32-transparent-surface.patch: add API so we can create a win32 surface for an HDC and indicate the surface has an alpha channel cairo_qt_glyphs.patch: Drop X surface from Qt surface, add support for new qt glyphs api empty-clip-rectangles.patch: f2fa15680ec3ac95cb68d4957557f06561a7dc55 empty-clip-extents.patch: b79ea8a6cab8bd28aebecf6e1e8229d5ac017264 clip-rects-surface-extents.patch: 108b1c7825116ed3f93aa57384bbd3290cdc9181 disable-previous-scaled-font-cache.patch: Disable the previous-scaled-font-cache until we figure out our ctm handling (#583035) copyarea-with-alpha.patch: support simple overlapping self copies in (some) color_alpha xlib surfaces. https://bugs.freedesktop.org/show_bug.cgi?id=29250 fix-clip-test.patch: Use y 498c10032ea3f8631a928cd7df96766f2c8ddca4 quartz-refactor-surface-setup.patch: Extract the surface-source setup chunk of _cairo_quartz_setup_state into its own function quartz-fix-PAD.patch: Treat PAD like NONE instead of REPEAT quartz-mask-non-OVER.patch: Don't use CGContextSetAlpha to optimize alpha masking for non-OVER operators quartz-layers-content.patch: Store cairo content type in CGLayer surfaces quartz-optimize-OVER.patch: Optimize OVER to SOURCE for opaque patterns quartz-check-imageSurfaceEquiv.patch: Drop cairo_quartz_surface_t's "imageSurfaceEquiv" member variable if we have problems creating it disable-subpixel-antialiasing.patch: Add API to disable subpixel antialiasing completely for a target surface tee-surfaces-pointwise.patch: Composite tee subsurfaces pointwise if possible pattern_get_surface-no-error.patch: Don't put a pattern into error if cairo_pattern_get_surface fails missing-cairo-clip-init.diff: Missing cairo_clip_init call in cairo_gstate_show_text_glyphs lead to crash fix-cairo-win32-print-gdi-error.diff: Don't use fwprintf with char* format. Flush stderr so that all error messages appears before exit. pixman-image-transform.patch: Reset the transform on pixman images when using them as destinations. ==== pixman patches ==== pixman-android-cpu-detect.patch: Add CPU detection support for Android, where we can't reliably access /proc/self/auxv. pixman-rename-and-endian.patch: include cairo-platform.h for renaming of external symbols and endian macros NOTE: we previously supported ARM assembler on MSVC, this has been removed because of the maintenance burden pixman-export.patch: use cairo_public for PIXMAN_EXPORT to make sure pixman symbols are not exported in libxul ==== disable printing patch ==== disable-printing.patch: allows us to use NS_PRINTING to disable printing.