Age | Commit message (Collapse) | Author | Files | Lines |
|
Switch to calloc in _cairo_cff_font_fallback_create
Closes #838
See merge request cairo/cairo!545
|
|
This makes this function more consistent with _cairo_cff_font_create, the other
function in this file that allocates fonts.
|
|
Fix implicit conversion warning
See merge request cairo/cairo!542
|
|
GCC 12.2 reports the following warning:
[3/16] Compiling C object util/cairo-script/libcairo-script-interpreter.so.2.11801.1.p/cairo-script-scanner.c.o
../util/cairo-script/cairo-script-scanner.c:1562:38: warning: implicit conversion from 'int' to 'float' changes value from 2147483647 to 2147483648 [-Wimplicit-const-int-float-conversion]
if (real >= INT32_MIN && real <= INT32_MAX && (int) real == real)
~~ ^~~~~~~~~
/usr/include/stdint.h:123:22: note: expanded from macro 'INT32_MAX'
^~~~~~~~~~
|
|
Fix alloca undefined on Solaris
See merge request cairo/cairo!540
|
|
Solaris defines alloca in the <alloca.h> header
../src/cairo-colr-glyph-render.c: In function ‘add_sweep_gradient_patches’:
../src/cairo-colr-glyph-render.c:661:14: error: implicit declaration of
function ‘alloca’ [-Werror=implicit-function-declaration]
661 | angles = alloca (sizeof (double) * cl->n_stops);
| ^~~~~~
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
ci: install latest Meson on windows jobs
See merge request cairo/cairo!541
|
|
Looks like fontconfig requires a newer Meson than
what's installed in the image.
|
|
meson: always skip IPC_RMID_DEFERRED_RELEASE check when cross compiling
See merge request cairo/cairo!534
|
|
tests: remove gl reference images
See merge request cairo/cairo!539
|
|
Leftover from b5793081
|
|
Improve accuracy of computed metrics for FT fonts
See merge request cairo/cairo!533
|
|
Prefer COLRv1 table
See merge request cairo/cairo!537
|
|
|
|
ci: bump windows image and keep meson logs around for msvc builds
See merge request cairo/cairo!538
|
|
|
|
|
|
_cairo_surface_create_in_error(): Add PNG_ERROR support
See merge request cairo/cairo!524
|
|
../../br-test-pkg/bootlin-armv5-uclibc/build/cairo-1.17.4/meson.build:279:13:
ERROR: Can not run test applications in this cross environment.
Commit 1bec56ea8a931e1ae1c74cc740134497ec365267 added support to define
ipc_rmid_deferred_release in a cross-compile config, but still kept
the default to auto, which anyhow results in an error when cross-compiling.
There is only one usage of the ipc_rmid_deferred_release compile declarative
which was originally added in this commit: 5041b462d084de8552336275914d30c23bf5dd35.
If ipc_rmid_deferred_release is set to FALSE, an additional XSync is performed.
This doesn't sound very harmful, so that is why this commit defaults to FALSE
and thus avoids any cross-compile errors.
Signed-off-by: Thomas Devoogdt <thomas@devoogdt.com>
|
|
In particular, with bitmap fonts, a floating-point error was affecting
y_bearing, yielding a value close to an integer instead of the integer
exactly. The change consists in replacing some operations of the form
A * (1/B) by A/B. Details of the issue in #503.
This new code will not always avoid rounding errors in final values
when these values could be exact, but it makes some of these errors
disappear.
The changes in the src/cairo-ft-font.c code consists of:
* Define the SCALE() macro (with some explanations in a comment).
* Remove the declarations and definitions of x_factor and y_factor.
* Update the code to use SCALE() instead of x_factor and y_factor.
perl -pi -e 's{(DOUBLE_\w+) ?(\(.*\)) \* ([xy])_factor}
{SCALE (\1 \2, unscaled->\3_scale)}' \
src/cairo-ft-font.c
* Replace the remaining 0 * x_factor and 0 * y_factor by 0.
|
|
Cairo 1.18.0 doesn't draw italic or bold text on Mac
See merge request cairo/cairo!531
|
|
Commit cf351a8a attempted to convert the font generation in
'_cairo_quartz_font_create_for_toy' to use CTFontCreateWithName and that uses
only Postscript Names, meaning with the hyphens.
Commit c6dc5df6 converted back to CGFont. CGFontCreateWithFontName is supposed
to work with Postscript Names, but it seems sometimes it does not.
In case a CGFont cannot be created using Postscript Names, attempt unhyphenated
version of font family name.
|
|
Copy font-options during creation of a fallback font
Closes #819
See merge request cairo/cairo!530
|
|
Specially important for font variations, which before did not
work in PDF, etc, output.
Script surface is not updated. It seems out of date with all
recent additions to cairo_font_options_t, so it loses the
variations :(.
Fixes https://gitlab.freedesktop.org/cairo/cairo/-/issues/819
|
|
[pdf] Set both fill and stroke colors in show_text_glyphs
Closes #813
See merge request cairo/cairo!527
|
|
Since a user-font might be calling stroke, and PDF has separate
stroke and fill colors.
Note that this bug was not exposed in Poppler. It's probably a
bug there. But multiple other viewers expoed this bug.
Fixes https://gitlab.freedesktop.org/cairo/cairo/-/issues/813
|
|
cairo-ps-surface: fix -Walloc-size
See merge request cairo/cairo!525
|
|
GCC 14 introduces a new -Walloc-size included in -Wextra which gives:
```
src/cairo-ps-surface.c:3524:18: warning: allocation of insufficient size ‘1’ for type ‘cairo_ps_form_t’ {aka ‘struct _cairo_ps_form’} with size ‘88’ [-Walloc-size]
```
The calloc prototype is:
```
void *calloc(size_t nmemb, size_t size);
```
So, just swap the number of members and size arguments to match the prototype, as
we're initialising 1 struct of size `sizeof(cairo_ps_form_t)`. GCC then sees we're not
doing anything wrong.
Signed-off-by: Sam James <sam@gentoo.org>
|
|
Traditionally, loading a malformed PNG file with
cairo_image_surface_create_from_png() resulted in
CAIRO_STATUS_NO_MEMORY. This was apparently changed in commit
c5ee3f11b5f by adding CAIRO_STATUS_PNG_ERROR and using it for errors
returned from libpng. However, I don't see how this was supposed to
actually work.
There are a couple of error codes supported by
_cairo_surface_create_in_error(). Anything else is turned into
CAIRO_STATUS_NO_MEMORY, which is not a helpful status. For this reason,
CAIRO_STATUS_PNG_ERROR would be turned into CAIRO_STATUS_NO_MEMORY.
This commit adds support for CAIRO_STATUS_PNG_ERROR to
_cairo_surface_create_in_error() so that this error can actually be
returned to the caller.
Signed-off-by: Uli Schlachter <psychon@znc.in>
|
|
quartz-font: Fix transposed constants
Closes #810
See merge request cairo/cairo!523
|
|
kCTFontColorGlyphsTrait is available in Mac OS X 10.7 and later.
kCTFontTraitColorGlyphs is available in OS X 10.8 and later.
Fixes build failure on Mac OS X 10.7.
Closes #810
|
|
Require pixman >= 0.40
See merge request cairo/cairo!522
|
|
Fix surface type mismatch error in pdf-interchange
See merge request cairo/cairo!521
|
|
|
|
|
|
Fix alloca undefined with MSVC
Closes #808
See merge request cairo/cairo!520
|
|
Conditionally includes malloc.h when compiling with
MSVC so that alloca is defined.
|
|
util: remove malloc-stats
Closes #640
See merge request cairo/cairo!519
|
|
Not really cairo-related and has now been moved into a
separate repository at https://github.com/behdad/malloc-stats
Fixes #640
|
|
Release Cairo 1.18.0
See merge request cairo/cairo!517
|
|
|
|
|
|
The doc syntax and coverage are part of the test suite.
|
|
The modern gtk-doc syntax for program listing is `|[ ... ]|`.
|
|
|
|
The XML files are moved in the xml directory.
|
|
The gtk-doc parser will not respect `#if 0 ... #endif` blocks.
|
|
|
|
|
|
The tee API has been left undocumented all this time.
|