cairo/src
Adrian Johnson b092b63119 fix warning: variable X might be clobbered by 'longjmp'
Move calls to setjmp into separate function to avoid clobbering
local variables.
2017-10-21 13:08:30 +10:30
..
drm drm: Add/reorder headers as required by check-preprocessor-syntax.sh 2017-06-13 14:57:38 -07:00
skia src: Fix memory issue reported by cppcheck static analysis tool 2014-08-27 20:39:49 -07:00
win32 Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
.gitignore gitignore: Ignore .trs (test results) 2015-07-31 17:56:54 -07:00
cairo-analysis-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-analysis-surface.c Support tag operations in analysis and paginated surface 2016-10-01 17:30:13 +09:30
cairo-arc-private.h skia: Update to use cairo_backend_t interface 2011-08-13 09:58:02 +01:00
cairo-arc.c arc: Insert the initial point on the arc 2014-09-24 12:35:47 +01:00
cairo-array-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-array.c Avoid appending an empty slot to an user data array when user_data is NULL. 2015-04-20 17:16:18 -07:00
cairo-atomic-private.h Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-atomic.c Fix data race in freed_pool 2016-03-05 14:35:17 +01:00
cairo-backend-private.h Add tag functions to cairo_t and cairo_surface_t 2016-10-01 17:14:28 +09:30
cairo-base64-stream.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-base85-stream.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-bentley-ottmann-rectangular.c fix warning: variable X might be clobbered by 'longjmp' 2017-10-21 13:08:30 +10:30
cairo-bentley-ottmann-rectilinear.c Split cairo-combsort-privates into struct+inlines 2012-04-19 12:22:07 +01:00
cairo-bentley-ottmann.c stroke,traps: Emit join without loss of precision 2014-09-29 08:42:17 +01:00
cairo-beos-surface.cpp Split cairo-recording-surface-private into struct+inlines 2012-04-19 12:51:03 +01:00
cairo-beos.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-botor-scan-converter.c fix unused function warnings 2017-10-16 20:18:49 +10:30
cairo-box-inline.h core: helper inline for rect->box conversion 2016-07-02 13:35:34 +02:00
cairo-boxes-intersect.c Split cairo-combsort-privates into struct+inlines 2012-04-19 12:22:07 +01:00
cairo-boxes-private.h core: dropped actually unused parameter of _cairo_boxes_to_array() 2016-07-02 13:35:38 +02:00
cairo-boxes.c core: dropped actually unused parameter of _cairo_boxes_to_array() 2016-07-02 13:35:38 +02:00
cairo-cache-private.h Fix warnings from check-doc-syntax.sh 2014-03-13 17:12:43 -07:00
cairo-cache.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-cff-subset.c factor out ascii to double code in cff-subset into _cairo_strtod 2017-09-22 18:17:25 +09:30
cairo-clip-boxes.c core: fixed code duplication 2016-07-02 13:35:38 +02:00
cairo-clip-inline.h Split cairo-clip-privates into struct+inlines 2012-04-19 12:19:19 +01:00
cairo-clip-polygon.c Split cairo-clip-privates into struct+inlines 2012-04-19 12:19:19 +01:00
cairo-clip-private.h Split cairo-clip-privates into struct+inlines 2012-04-19 12:19:19 +01:00
cairo-clip-region.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-clip-surface.c surface: Merge scratch construction into _cairo_surface_create_scratch 2013-09-05 16:11:09 +01:00
cairo-clip-tor-scan-converter.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-clip.c clip: Transform clip path in _cairo_clip_intersect_clip_path_transformed() 2012-07-24 11:06:29 +02:00
cairo-cogl-context-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-context.c doc: fix a few typos found by codespell 2012-03-10 10:20:28 +01:00
cairo-cogl-gradient-private.h doc: ensure "compatibility" spelling 2012-03-10 10:20:29 +01:00
cairo-cogl-gradient.c doc: ensure "compatibility" spelling 2012-03-10 10:20:29 +01:00
cairo-cogl-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-cogl-utils-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-utils.c backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-color.c _cairo_color_double_to_short(): Use standard rounding algorithm 2013-10-22 14:27:43 -04:00
cairo-combsort-inline.h Split cairo-combsort-privates into struct+inlines 2012-04-19 12:22:07 +01:00
cairo-compiler-private.h clang-cl: Use size of the pointer explicitly 2014-07-09 16:35:30 -04:00
cairo-composite-rectangles-private.h xcb: track fallback damage 2011-09-19 15:23:57 +01:00
cairo-composite-rectangles.c pattern: don't round extents to 0 on vector surfaces 2016-07-16 15:42:23 +09:30
cairo-compositor-private.h xlib: Only fallback through the mask intermediate if we can composite the mask 2013-01-11 13:18:26 +00:00
cairo-compositor.c compositor: Skip invisible strokes 2012-08-26 11:07:57 +01:00
cairo-contour-inline.h Split cairo-contour-privates into struct+inlines 2012-04-19 12:25:42 +01:00
cairo-contour-private.h Split cairo-contour-privates into struct+inlines 2012-04-19 12:25:42 +01:00
cairo-contour.c Remove some useless declarations found by scan-build, the LLVM/clang static analyzer 2014-05-06 10:14:53 -07:00
cairo-damage-private.h xlib/shm: Discard damage upon shm finish 2013-01-08 16:07:32 +00:00
cairo-damage.c xlib/shm: Discard damage upon shm finish 2013-01-08 16:07:32 +00:00
cairo-debug.c Write debugging information to the debugging file 2016-09-04 11:05:43 +02:00
cairo-default-context-private.h qt: Fix compilation, also minor fix for building against Qt5 2012-02-12 09:57:00 +00:00
cairo-default-context.c Add tag functions to cairo_t and cairo_surface_t 2016-10-01 17:14:28 +09:30
cairo-deflate-stream.c Remove if's from Makefile.sources 2011-06-14 15:25:08 +02:00
cairo-deprecated.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-device-private.h device: Make flush vfunc return a cairo_status_t 2010-06-07 13:37:48 +02:00
cairo-device.c Fix grammar in cairo_*_reference() function documentation. 2016-10-10 14:39:19 -07:00
cairo-directfb-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-directfb.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-drm.h drm: code dump, sorry. 2010-05-12 20:54:49 +01:00
cairo-egl-context.c gl: Increase default VBO size on GL to 1M 2014-09-19 17:23:50 -07:00
cairo-error-inline.h Split cairo-error-private into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-error-private.h pdf: structured text and hyperlink support 2016-10-01 22:05:42 +09:30
cairo-error.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-fallback-compositor.c surface: Use the internal map/unmap 2012-05-26 16:07:00 +02:00
cairo-features-uninstalled.pc.in build: Fudge the build system some more so it handles extra libs 2010-08-10 01:24:30 +02:00
cairo-features.pc.in build: Fudge the build system some more so it handles extra libs 2010-08-10 01:24:30 +02:00
cairo-fixed-private.h Fix undefined-behavior with integer math 2017-09-11 22:00:00 -07:00
cairo-fixed-type-private.h Correct spelling of "tessellator" throughout code 2014-02-26 18:55:25 -08:00
cairo-fixed.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-font-face-twin-data.c [twin] Improve glyph hints 2008-12-25 02:46:27 -05:00
cairo-font-face-twin.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-font-face.c Fix grammar in cairo_*_reference() function documentation. 2016-10-10 14:39:19 -07:00
cairo-font-options.c doc: Silence warnings about 'Since' field in private functions 2012-03-29 11:03:19 +02:00
cairo-fontconfig-private.h Make distcheck happy. 2010-07-12 11:05:57 +01:00
cairo-freed-pool-private.h Fix data race in freed_pool 2016-03-05 14:35:17 +01:00
cairo-freed-pool.c Fix data race in freed_pool 2016-03-05 14:35:17 +01:00
cairo-freelist-private.h Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-freelist-type-private.h freelist: Separate freelist inlines from the datatype in headers. 2010-09-02 14:51:30 +01:00
cairo-freelist.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-ft-font.c ft: prevent unused var warning when freetype < 2.8 2017-10-16 19:42:16 +10:30
cairo-ft-private.h headers: fix include order for AIX, bug#89354 2015-03-05 17:03:28 -08:00
cairo-ft.h doc: move value descriptions up 2012-03-10 10:20:29 +01:00
cairo-gl-composite.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-device.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-dispatch-private.h gl/msaa: Use GL_IMG_multisampled_render_to_texture when available 2012-12-05 16:17:10 -08:00
cairo-gl-dispatch.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-ext-def-private.h gl: Fix build issues for GLES2 2011-05-10 08:35:26 +01:00
cairo-gl-glyphs.c gl: Fix compiler warnings in the GL backend 2013-05-07 12:01:17 -07:00
cairo-gl-gradient-private.h gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-gradient.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-info.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-msaa-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-gl-operand.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-private.h gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-shaders.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-source.c Compile fix 2015-10-17 22:38:50 +10:30
cairo-gl-spans-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-gl-surface-legacy.c gl: do not force flush everytime uploading a glyph image to glyph cache 2013-02-04 10:49:37 +00:00
cairo-gl-surface.c gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-gl-traps-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-gl.h gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
cairo-glx-context.c gl: Don't query the display when checking if the context changed 2013-01-23 16:55:38 -08:00
cairo-gstate-private.h Add tag functions to cairo_t and cairo_surface_t 2016-10-01 17:14:28 +09:30
cairo-gstate.c Factor out the ISFINITE() macro 2017-10-11 19:13:46 -07:00
cairo-hash-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-hash.c hash: Keep a simple lut in front of the main hash 2012-03-10 10:46:49 +00:00
cairo-hull.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-image-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-image-info-private.h Correctly decode Adobe CMYK JPEGs in PDF export 2016-09-09 22:35:55 +09:30
cairo-image-info.c Fix off by one check in cairo-image-info.c 2017-06-15 20:53:29 +09:30
cairo-image-mask-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-image-source.c image: fix record-replay-extend test failures 2016-06-05 20:43:36 +09:30
cairo-image-surface-inline.h image: Check for an error surface before dereferencing the backend 2012-09-08 15:12:58 +01:00
cairo-image-surface-private.h image: Add a convenience function for creating an image from another's data 2013-02-01 16:36:03 +00:00
cairo-image-surface.c image: Disambiguate 0. in doxygen 2017-08-21 14:39:24 -07:00
cairo-line-inline.h stroke,traps: Emit join without loss of precision 2014-09-29 08:42:17 +01:00
cairo-line-private.h Get make check back to a happy spot 2014-10-03 12:34:06 -07:00
cairo-line.c core: fix compiler warnings 2016-07-02 13:27:11 +02:00
cairo-list-inline.h xlib: Unlike the visual when destroying it 2013-06-03 13:56:00 +01:00
cairo-list-private.h Split cairo-list into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-lzw.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-malloc-private.h doc: Make documentation comments symmetric 2012-03-29 11:03:18 +02:00
cairo-mask-compositor.c surface: Merge scratch construction into _cairo_surface_create_scratch 2013-09-05 16:11:09 +01:00
cairo-matrix.c Factor out the ISFINITE() macro 2017-10-11 19:13:46 -07:00
cairo-mempool-private.h Fix make check 2012-09-24 09:42:43 +02:00
cairo-mempool.c mempool: Reduce an assert into an error return for get_buddy() 2013-03-15 09:11:28 +00:00
cairo-mesh-pattern-rasterizer.c mesh-rasterize: Fix number of iterations 2014-03-21 14:10:19 +01:00
cairo-misc.c factor out ascii to double code in cff-subset into _cairo_strtod 2017-09-22 18:17:25 +09:30
cairo-mono-scan-converter.c mono-scan-converter: Use edge->is_vertical flag 2012-03-10 10:46:50 +00:00
cairo-mutex-impl-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-mutex-list-private.h Use the new pixman_glyph_cache_t API that will be in pixman 0.28.0 2012-06-09 15:52:59 -04:00
cairo-mutex-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-mutex-type-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-mutex.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-no-compositor.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-observer.c Split cairo-list into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-os2-private.h os2: Fix blitting 24 bpp pixel data. 2010-08-08 22:29:39 +03:00
cairo-os2-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-os2.h os2: New API to create surfaces without a persistent HPS. 2010-08-08 22:29:39 +03:00
cairo-output-stream-private.h Mark recently added _cairo_output_stream_print_matrix private symbol 2014-03-13 15:13:04 -07:00
cairo-output-stream.c output-stream: allow %s strings larger than 512 chars 2017-10-13 19:33:30 +10:30
cairo-paginated-private.h pdf: thumbnail API 2016-10-01 22:46:49 +09:30
cairo-paginated-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-paginated-surface.c pdf: thumbnail API 2016-10-01 22:46:49 +09:30
cairo-path-bounds.c Prevent curved strokes in small ctms from being culled from vector surfaces 2017-10-03 22:27:25 +10:30
cairo-path-fill.c fill: Fix unantialiased rectilinear-fill-to-boxes 2011-09-30 15:58:14 +01:00
cairo-path-fixed-private.h Mark _cairo_path_is_simple_quad as private 2013-01-27 16:29:41 +00:00
cairo-path-fixed.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-path-in-fill.c stroke: Convert the outlines into contour and then into a polygon 2011-08-15 10:31:47 +01:00
cairo-path-private.h Implement cairo_backend_t 2011-07-15 11:05:19 +01:00
cairo-path-stroke-boxes.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-path-stroke-polygon.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-path-stroke-traps.c Revert "stroker: Check for scaling overflow in computing half line widths" 2017-05-13 09:37:34 +02:00
cairo-path-stroke-tristrip.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-path-stroke.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-path.c path: Convert from backend coordinates back into user coordinates 2012-09-10 15:09:18 +01:00
cairo-pattern-inline.h Split cairo-list into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-pattern-private.h pattern: don't round extents to 0 on vector surfaces 2016-07-16 15:42:23 +09:30
cairo-pattern.c pattern: Fix incorrect grammar in cairo_pattern_get_type. 2016-10-10 14:39:23 -07:00
cairo-pdf-interchange.c pdf: use explicit dest instead of named dest when 'internal' attribute is set 2017-08-29 21:43:07 +09:30
cairo-pdf-operators-private.h pdf: structured text and hyperlink support 2016-10-01 22:05:42 +09:30
cairo-pdf-operators.c pdf-operators: fix bug in line wrapping 2017-03-02 19:14:04 +10:30
cairo-pdf-shading-private.h Update FSF address 2011-07-31 13:05:21 +02:00
cairo-pdf-shading.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-pdf-surface-private.h pdf: use explicit dest instead of named dest when 'internal' attribute is set 2017-08-29 21:43:07 +09:30
cairo-pdf-surface.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-pdf.h pdf: use link attributes instead of dest name for cairo_pdf_surface_add_outline 2017-08-26 16:32:48 +09:30
cairo-pen.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-pixman-private.h Make "make check" happy 2013-08-26 17:56:27 +01:00
cairo-png.c fix warning: variable X might be clobbered by 'longjmp' 2017-10-21 13:08:30 +10:30
cairo-polygon-intersect.c core: fix compiler warnings 2016-07-02 13:27:11 +02:00
cairo-polygon-reduce.c core: fix compiler warnings 2016-07-02 13:27:11 +02:00
cairo-polygon.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-private.h Implement cairo_backend_t 2011-07-15 11:05:19 +01:00
cairo-ps-surface-private.h Fix PS record-neg-extents test failure 2016-06-05 20:43:36 +09:30
cairo-ps-surface.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-ps.h Revert accidental push of ps debugging API. 2012-04-14 14:54:07 +01:00
cairo-qt-surface.cpp qt: replaced calls to _cairo_clip_init_copy() by _cairo_clip_copy() 2016-07-02 13:38:25 +02:00
cairo-qt.h qt: Define cairo-qt's API as C symbols 2010-07-11 18:53:42 +02:00
cairo-quartz-font.c quartz-font: Fix text-glyph-range 2017-04-25 18:06:14 +02:00
cairo-quartz-image-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-quartz-image.h Update license blocks to use "Mozilla Foundation" instead of "Mozilla Corporation" 2010-05-06 16:07:43 -04:00
cairo-quartz-private.h quartz: Restore 10.4-specific font code 2017-01-18 15:06:33 +01:00
cairo-quartz-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-quartz.h quartz: Fix the 32-bits build on MacOSX 10.7 2011-10-01 09:24:08 -07:00
cairo-raster-source-pattern.c Fix warnings from check-doc-syntax.sh 2014-03-13 17:12:43 -07:00
cairo-recording-surface-inline.h Split cairo-recording-surface-private into struct+inlines 2012-04-19 12:46:34 +01:00
cairo-recording-surface-private.h Add tag functions to recording surface and surface-wrapper 2016-10-01 17:26:16 +09:30
cairo-recording-surface.c Add tag functions to recording surface and surface-wrapper 2016-10-01 17:26:16 +09:30
cairo-rectangle.c stroke: Make the incremental trapezoid stroker optionally available again 2013-01-03 15:07:18 +00:00
cairo-rectangular-scan-converter.c Split cairo-combsort-privates into struct+inlines 2012-04-19 12:22:07 +01:00
cairo-reference-count-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-region-private.h Add preliminary damage tracking 2012-02-15 14:21:00 +00:00
cairo-region.c pdf: structured text and hyperlink support 2016-10-01 22:05:42 +09:30
cairo-rtree-private.h Split cairo-list into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-rtree.c gl: Decouple the glyph upon eviction 2011-12-07 18:00:18 +00:00
cairo-scaled-font-private.h Expose 'has color glyphs' as a scaled font property 2017-07-29 12:30:50 +01:00
cairo-scaled-font-subsets-private.h scaled-font-subsets: if glyph 0 used for rendering, remap to different index 2015-09-27 09:34:37 +09:30
cairo-scaled-font-subsets.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-scaled-font.c Factor out the ISFINITE() macro 2017-10-11 19:13:46 -07:00
cairo-script-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-script-surface.c Don't cull very thin lines on vector surfaces 2015-10-17 18:39:18 +10:30
cairo-script.h doc: Add since documentation for enumeration values 2012-03-29 11:03:19 +02:00
cairo-shape-mask-compositor.c surface: Merge scratch construction into _cairo_surface_create_scratch 2013-09-05 16:11:09 +01:00
cairo-skia-surface.cpp skia : Add Debug support for skia backend 2014-07-10 12:08:01 -07:00
cairo-skia.h skia: Update to use cairo_backend_t interface 2011-08-13 09:58:02 +01:00
cairo-slope-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-slope.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-spans-compositor-private.h image: Enable inplace compositing with opacities for general routines 2013-01-26 16:10:47 +00:00
cairo-spans-compositor.c surface: Merge scratch construction into _cairo_surface_create_scratch 2013-09-05 16:11:09 +01:00
cairo-spans-private.h core: reintroduce bot-scan-converter functions 2016-01-13 17:07:53 -08:00
cairo-spans.c pdf: structured text and hyperlink support 2016-10-01 22:05:42 +09:30
cairo-spline.c Split cairo-box-privates into struct+inlines 2012-04-19 12:16:53 +01:00
cairo-stroke-dash-private.h stroke: Rely on the tessellator to remove self-intersections 2011-08-13 16:41:28 +01:00
cairo-stroke-dash.c dash: Increment dash_remain by the next segment to reduce accumulation errors 2012-04-19 16:12:55 +01:00
cairo-stroke-style.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-surface-backend-private.h Add tag functions to cairo_t and cairo_surface_t 2016-10-01 17:14:28 +09:30
cairo-surface-clipper-private.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-surface-clipper.c Split cairo-clip-privates into struct+inlines 2012-04-19 12:19:19 +01:00
cairo-surface-fallback-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-fallback.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-inline.h xlib: Implement SHM fallbacks and fast upload paths 2012-08-17 13:58:09 +01:00
cairo-surface-observer-inline.h Split cairo-surface-observer-private into struct+inlines 2012-04-19 12:35:20 +01:00
cairo-surface-observer-private.h Fix out of bound access in struct pattern->type 2015-07-09 13:50:35 -07:00
cairo-surface-observer.c Prevent observer surfaces from writing to stdout 2016-09-04 08:45:06 +02:00
cairo-surface-offset-private.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-surface-offset.c Split cairo-clip-privates into struct+inlines 2012-04-19 12:19:19 +01:00
cairo-surface-private.h Don't cull very thin lines on vector surfaces 2015-10-17 18:39:18 +10:30
cairo-surface-snapshot-inline.h snapshot: Avoid triggering assertion for grabbing the target during destroy 2012-05-01 16:55:22 +01:00
cairo-surface-snapshot-private.h snapshot: Perform the cow under a mutex 2012-04-27 14:10:50 +01:00
cairo-surface-snapshot.c Don't cull very thin lines on vector surfaces 2015-10-17 18:39:18 +10:30
cairo-surface-subsurface-inline.h Split cairo-surface-subsurface-private into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-surface-subsurface-private.h Split cairo-surface-subsurface-private into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-surface-subsurface.c Don't cull very thin lines on vector surfaces 2015-10-17 18:39:18 +10:30
cairo-surface-wrapper-private.h Add tag functions to recording surface and surface-wrapper 2016-10-01 17:26:16 +09:30
cairo-surface-wrapper.c Add tag functions to recording surface and surface-wrapper 2016-10-01 17:26:16 +09:30
cairo-surface.c Handle SOURCE and CLEAR operators when painting color glyphs 2017-09-12 01:35:15 -04:00
cairo-svg-surface-private.h svg: source surface hash table does not need to hold the source 2017-10-15 07:57:54 +10:30
cairo-svg-surface.c svg: recording_surface is needed even if not emitted 2017-10-16 20:18:49 +10:30
cairo-svg.h doc: Add since documentation for enumeration values 2012-03-29 11:03:19 +02:00
cairo-tag-attributes-private.h pdf: fix link positions 2017-08-26 16:26:12 +09:30
cairo-tag-attributes.c pdf: fix link positions 2017-08-26 16:26:12 +09:30
cairo-tag-stack-private.h fix make check 2016-10-04 12:00:30 +10:30
cairo-tag-stack.c pdf: don't write logical structure if it only contains links 2017-08-22 21:25:22 +09:30
cairo-tee-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-tee-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-tee.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-time-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-time.c win32: Fix return value for cairo_time_get 2012-05-20 10:55:25 +01:00
cairo-tor-scan-converter.c tor-scan-converter: Correctly align 64bit types 2014-12-06 10:25:30 +01:00
cairo-tor22-scan-converter.c tor: Fudge the edge if it is projected into a point 2012-09-27 15:29:36 +01:00
cairo-toy-font-face.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-traps-compositor.c traps,xcb: Set the box count after filtering 2014-08-25 08:55:24 +01:00
cairo-traps-private.h stroke,traps: Emit join without loss of precision 2014-09-29 08:42:17 +01:00
cairo-traps.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-tristrip-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-tristrip.c Avoid indiscriminate use of VALGRIND_MAKE_MEM_NOACCESS. 2015-06-26 16:12:33 -07:00
cairo-truetype-subset-private.h win32: add synthetic font subsetting support 2010-11-23 00:13:56 +10:30
cairo-truetype-subset.c truetype: limit font name to 127 chars 2017-10-13 19:50:24 +10:30
cairo-type1-fallback.c replace _BSD_SOURCE with _DEFAULT_SOURCE 2017-09-16 10:04:57 +09:30
cairo-type1-glyph-names.c Type 1 glyph names: Do not use an array of pointers for winansi glyph names 2010-11-06 22:45:11 +10:30
cairo-type1-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-type1-subset.c factor out ascii to double code in cff-subset into _cairo_strtod 2017-09-22 18:17:25 +09:30
cairo-type3-glyph-surface-private.h pdf-operators: only wrap text strings for PS output 2014-10-31 19:26:05 +10:30
cairo-type3-glyph-surface.c pdf: change from pdf coordinates to cairo coordinates 2016-06-05 20:43:36 +09:30
cairo-types-private.h Fix warnings from check-doc-syntax.sh 2014-03-13 17:12:43 -07:00
cairo-unicode.c Remove unused variable 2017-09-02 16:11:43 +09:30
cairo-uninstalled.pc.in Build -uninstalled.pc files 2008-09-11 00:38:30 -04:00
cairo-user-font-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-user-font.c font: Push the last reference dec into the backend->destroy() callback 2013-09-17 16:37:47 +01:00
cairo-version.c doc: Drop extraneous para's 2015-03-06 19:19:13 -08:00
cairo-version.h Some nasty tracks to make changing version number not cause a total rebuild 2008-08-28 18:18:23 -04:00
cairo-vg-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-vg.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-wgl-context.c gl: Check against user-provided invalid sizes 2011-12-05 17:17:26 +00:00
cairo-wideint-private.h wideint: Fix compilation failure for bare use of uint64_t for !HAVE_UINT64_T 2012-05-20 10:55:26 +01:00
cairo-wideint-type-private.h Add UINT32_MAX define. 2011-03-03 16:31:03 -05:00
cairo-wideint.c cairo-wideint: Fix typo in two cairo_uint128 functions 2014-07-24 18:41:37 -07:00
cairo-win32.h win32: Add cairo API to set up a Win32 surface for an HDC with an alpha channel. 2015-04-13 17:43:28 -07:00
cairo-xcb-connection-core.c Remove some useless declarations found by scan-build, the LLVM/clang static analyzer 2014-05-06 10:14:53 -07:00
cairo-xcb-connection-render.c xcb: Verify extension support before sending 2012-09-25 11:27:59 +02:00
cairo-xcb-connection-shm.c xcb: Remove useless error handling 2013-09-16 12:59:03 +02:00
cairo-xcb-connection.c xcb: Query the display's subpixel order via RENDER 2015-01-17 20:11:59 +01:00
cairo-xcb-private.h headers: fix include order for AIX, bug#89354 2015-03-05 17:03:32 -08:00
cairo-xcb-resources.c xcb: Query the display's subpixel order via RENDER 2015-01-17 20:11:59 +01:00
cairo-xcb-screen.c xcb: Query the display's subpixel order via RENDER 2015-01-17 20:11:59 +01:00
cairo-xcb-shm.c mempool: Reduce the assertion into an alignment adjustment for the base 2012-12-01 09:23:37 +00:00
cairo-xcb-surface-core.c Don't cull very thin lines on vector surfaces 2015-10-17 18:39:18 +10:30
cairo-xcb-surface-render.c cairo-xcb: Remove a wrong optimisation 2016-07-21 18:58:58 +02:00
cairo-xcb-surface.c xcb: Fix error reporting if fallback fails 2017-05-30 18:04:38 +02:00
cairo-xcb.h Add cairo_xcb_surface_set_drawable 2011-12-02 15:31:51 +00:00
cairo-xlib-core-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-xlib-display.c xlib: Undo debug hack to force fallbacks 2014-08-01 11:30:42 +01:00
cairo-xlib-fallback-compositor.c xlib/shm: Limit use of the impromptu fallback pixmap for uploads 2012-08-17 23:20:01 +01:00
cairo-xlib-private.h headers: fix include order for AIX, bug#89354 2015-03-05 17:03:28 -08:00
cairo-xlib-render-compositor.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
cairo-xlib-screen.c Split cairo-list into struct+inlines 2012-04-19 13:17:29 +01:00
cairo-xlib-source.c Don't cull very thin lines on vector surfaces 2015-10-17 18:39:18 +10:30
cairo-xlib-surface-private.h headers: fix include order for AIX, bug#89354 2015-03-05 17:03:28 -08:00
cairo-xlib-surface-shm.c xlib: fix mixing xcb & xlib calls 2015-11-06 21:00:48 +01:00
cairo-xlib-surface.c xlib: Call XSync() before ignoring errors 2017-03-07 13:40:21 +01:00
cairo-xlib-visual.c xlib: Unlike the visual when destroying it 2013-06-03 13:56:00 +01:00
cairo-xlib-xcb-surface.c Fix cairo-xlib-xcb compilation 2015-11-06 20:50:47 +01:00
cairo-xlib-xrender-private.h Check for XRenderSolidFill() 2013-12-16 19:27:38 -05:00
cairo-xlib-xrender.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-xlib.h xlib: Replace obsolete disable-xrender with shiny new device debug interface 2012-02-22 10:41:37 +00:00
cairo-xml-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
cairo-xml.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo.c pdf: fix link positions 2017-08-26 16:26:12 +09:30
cairo.h pdf: structured text and hyperlink support 2016-10-01 22:05:42 +09:30
cairo.pc.in
cairoint.h Factor out the ISFINITE() macro 2017-10-11 19:13:46 -07:00
check-def.sh check: Fix check-def.sh for variations in GCC's linker 2013-06-21 20:18:40 +01:00
check-doc-syntax.awk check-doc-syntax: Don't hardcode path to awk 2013-09-16 12:57:57 +02:00
check-doc-syntax.sh check-doc-syntax: Don't hardcode path to awk 2013-09-16 12:57:57 +02:00
check-has-hidden-symbols.c [check] Move the hidden symbol check into check-{def,plt}.sh 2008-01-11 21:21:34 +00:00
check-headers.sh Set LC_ALL=C instead of LANG=C 2009-09-16 15:50:34 -04:00
check-link.c [src/check-link.c] Simple test to check we can link to the built cairo.so 2008-09-02 21:31:43 -04:00
check-plt.sh Set LC_ALL=C instead of LANG=C 2009-09-16 15:50:34 -04:00
check-preprocessor-syntax.sh test: Teach check-preprocessor-syntax.sh about -inlines.h 2014-10-09 10:56:28 +01:00
Makefile.am doc: Add script to enforce stricter validation of documentation comments 2012-03-29 11:03:18 +02:00
Makefile.am.analysis Improve headers-standalone target 2011-03-21 09:51:00 +01:00
Makefile.sources gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
Makefile.win32 build: Clean up environment variables and flags for the win32 build 2011-06-20 10:24:21 +02:00
Makefile.win32.features gl: Add support for OpenGL ES 3.0 2017-09-13 15:18:04 -07:00
README Fix various README typos 2009-01-02 02:56:38 -05:00
test-base-compositor-surface.c stroke: Make the incremental trapezoid stroker optionally available again 2013-01-03 15:07:18 +00:00
test-compositor-surface-private.h check: Make the newly added privates pass make check 2011-09-15 15:55:52 +01:00
test-compositor-surface.c Fix some surfaces missed in b1192bea 2015-10-17 22:02:11 +10:30
test-compositor-surface.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
test-null-compositor-surface.c Surround initialisations with atomic critical section 2017-10-15 18:51:04 +10:30
test-null-compositor-surface.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
test-paginated-surface.c Support tag operations in analysis and paginated surface 2016-10-01 17:30:13 +09:30
test-paginated-surface.h Update FSF address 2010-04-27 11:13:38 +02:00

Cairo Library Source Code
=========================

This directory contains the source code of the cairo library.


Source Code Listing
-------------------

The canonical list of source files is the file Makefile.sources.  See that
file for how it works.


New Backends
------------

The rule of the thumb for adding new backends is to see how other
backends are integrated.  Pick one of the simpler, unsupported, backends
and search the entire tree for it, and go from there.

To add new backends you need to basically:

  * Modify $(top_srcdir)/configure.in to add checks for your backend.

  * Modify Makefile.sources to add source files for your backend,

  * Modify $(top_srcdir)/boilerplate/ to add boilerplate code for
    testing your new backend.


New API
-------

After adding new API, run "make check" in this directory and fix any
reported issues.  Also add new API to the right location in
$(top_srcdir)/doc/public/cairo-sections.txt and run "make check"
in $(top_builddir)/doc/public to make sure that any newly added
documentation is correctly hooked up.

Do not forget to add tests for the new API.  See next section.


Tests
-----

There are some tests in this directory that check the source code and
the build for various issues.  The tests are very quick to run, and
particularly should be run after any documentation or API changes.  It
does not hurt to run them after any source modification either.  Run
them simply by calling:

	make check

There are also extensive regression tests in $(top_srcdir)/test.  It is
a good idea to run that test suite for any changes made to the source
code.  Moreover, for any new feature, API, or bug fix, new tests should
be added to the regression test suite to test the new code.


Bibliography
------------

A detailed list of academic publications used in cairo code is available
in the file $(top_srcdir)/BIBLIOGRAPHY.  Feel free to update as you
implement more papers.

For more technical publications (eg. Adobe technical reports) just
point them out in a comment in the header of the file implementing them.