1. 25 Mar, 2021 5 commits
  2. 22 Mar, 2021 1 commit
  3. 20 Mar, 2021 1 commit
  4. 10 Mar, 2021 1 commit
  5. 09 Mar, 2021 4 commits
    • Tim-Philipp Müller's avatar
      Merge branch 'meson-make-cairo-trace-executable' into 'master' · b718dae7
      Tim-Philipp Müller authored
      meson: make cairo-trace executable
      
      Closes #462
      
      See merge request cairo/cairo!145
      b718dae7
    • Tim-Philipp Müller's avatar
      meson: make cairo-trace executable · ca478e03
      Tim-Philipp Müller authored
      Install with exec flag set and make sure tool is
      executable in build directory as well (by making
      the input file in the source directory executable).
      
      Fixes #462
      ca478e03
    • Uli Schlachter's avatar
      Fix a leak in an error path · 2af4412a
      Uli Schlachter authored
      Tested with valgrind. Before this patch, I got the following "definitely
      lost" entry, which is gone afterwards:
      
      94,416 bytes in 1 blocks are definitely lost in loss record 427 of 427
         at 0x483877F: malloc (in /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
         by 0x4B053F8: cairo_truetype_font_write_glyf_table (cairo-truetype-subset.c:625)
         by 0x4B06219: cairo_truetype_font_generate (cairo-truetype-subset.c:991)
         by 0x4B06917: cairo_truetype_subset_init_internal (cairo-truetype-subset.c:1159)
         by 0x4B06D72: _cairo_truetype_subset_init_pdf (cairo-truetype-subset.c:1255)
         by 0x4B6B113: _cairo_pdf_surface_emit_truetype_font_subset (cairo-pdf-surface.c:5892)
         by 0x4B6C2AD: _cairo_pdf_surface_emit_unscaled_font_subset (cairo-pdf-surface.c:6366)
         by 0x4B02FC7: _cairo_sub_font_collect (cairo-scaled-font-subsets.c:741)
         by 0x4B03A7A: _cairo_scaled_font_subsets_foreach_internal (cairo-scaled-font-subsets.c:1062)
         by 0x4B03B21: _cairo_scaled_font_subsets_foreach_unscaled (cairo-scaled-font-subsets.c:1090)
         by 0x4B6C3ED: _cairo_pdf_surface_emit_font_subsets (cairo-pdf-surface.c:6412)
         by 0x4B62B1A: _cairo_pdf_surface_finish (cairo-pdf-surface.c:2222)
      
      To reproduce, run the test case from the below link.
      
      Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28023
      
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      2af4412a
    • Uli Schlachter's avatar
      Avoid a use-after-scope · e5b9d96f
      Uli Schlachter authored
      This is the same fix as commit b345be5a, but in a different place in
      the same file.
      
      Fixes: cairo/cairo#453
      
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      e5b9d96f
  6. 08 Mar, 2021 6 commits
    • Uli Schlachter's avatar
      test/pdf-mime-data.c: Check for pdfimages · 2f25fa68
      Uli Schlachter authored
      
      
      Currently, the pdf-mime-data check just fails for me with the following
      output:
      
          sh: 1: pdfimages: not found
          pdf-mime-data: FAIL
      
      pdf-mime-data.log contains:
      
          pdfimages failed with exit status 32512
      
      Since I do not have pdfimages installed... yeah.
      
      This commit "fixes" that problem by skipping the test if pdfimages is
      not available. No idea if it would pass if it were available, but I do
      not feel like installing pdfimages just to test.
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      2f25fa68
    • Uli Schlachter's avatar
      pdf-mime-data: Fix for out-of-tree builds · 2a8d90c6
      Uli Schlachter authored
      
      
      This makes the code use the existing helper for loading PNGs that also
      considers the $srcdir environment variable. This makes it find the file
      in out of tree builds.
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      2a8d90c6
    • Uli Schlachter's avatar
      pdf-mime-data: Fix error checking · 0c64c216
      Uli Schlachter authored
      
      
      I am not quite sure, but an if for "ignore this error if something
      failed" seems wrong. Either this should have compared against status2 or
      checked for success. This commit fixes the code for the latter.
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      0c64c216
    • Uli Schlachter's avatar
      Update the PDF size limit in mime-unique-id · 433d9eb1
      Uli Schlachter authored
      
      
      The test mime-unique-id checks that some images are only embedded once
      in a PDF. It does so by checking if the file size is within some
      expected bounds. However, the test fails for me because the file is too
      small. Yes, too *small*.
      
      Fix this by updating the test to expect my current file size.
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      433d9eb1
    • Uli Schlachter's avatar
      test/mime-unique-id: Fix for out-of-tree builds · 0fd2197e
      Uli Schlachter authored
      
      
      Instead of failing because it did not find an image, this now fails for
      me since the PDF is too small (???).
      
      This new code is modelled after cairo_test_create_surface_from_png().
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      0fd2197e
    • Uli Schlachter's avatar
      test suite: fflush() before fork() · 446d3972
      Uli Schlachter authored
      
      
      Forking a process also duplicates the buffers of FILE*s. Thus, if there
      is pending data, both the parent and the child process will write
      things. This is seldom a good idea.
      
      This issue was not noticed so far since by default the test suite
      already calls fflush() a lot. However, when stdout and stderr are both
      not a tty (according to isatty(1) and isatty(2)), these flushes are
      skipped. The result is that the child process repeat the full output
      from the test suite starting with "Compiled against cairo 1.17.4,
      running on 1.17.4."
      
      To reproduce this problem run: ./cairo-test-suite 2>&1 | cat
      
      Fix this by flushing all the files that I managed to find before fork().
      
      Thanks to Pekka Paalanen for helping me figure this out.
      Signed-off-by: Uli Schlachter's avatarUli Schlachter <psychon@znc.in>
      446d3972
  7. 05 Mar, 2021 1 commit
    • Uli Schlachter's avatar
      Merge branch... · 7788000b
      Uli Schlachter authored
      Merge branch 'meson-allow-skipping-of-run-check-for-ipc-rmid-deferred-release-in-cross-build' into 'master'
      
      meson: allow skipping of run check for IPC_RMID_DEFERRED_RELEASE
      
      Closes #408
      
      See merge request cairo/cairo!134
      7788000b
  8. 04 Mar, 2021 3 commits
    • Tim-Philipp Müller's avatar
      Merge branch 'alatiera/exclude-artifacts' into 'master' · 71ece6d1
      Tim-Philipp Müller authored
      ci: cleanup the autotools artifacts a bit
      
      Closes #465
      
      See merge request cairo/cairo!137
      71ece6d1
    • Jordan Petridіs's avatar
      ci: cleanup the autotools artifacts a bit · 921cc3e5
      Jordan Petridіs authored
      Exclude .trace and .cs file from being exported.
      This brings down the generated artifacts size to 73mb.
      
      Close #465
      921cc3e5
    • Uli Schlachter's avatar
      Use the serial automake test harness · 57068e62
      Uli Schlachter authored
      Once upon a time, automake had one way to run tests. Apparently this is
      (nowadays?) called the serial test harness. Then, in some release (I do
      not remember which one), the parallel test harness became the default.
      
      The parallel harness runs all tests in parallel, but does not (really)
      show the test output, but instead has output redirected to files. Sort
      of. I did not find the result of my printf() anywhere.
      
      The automake docs strongly discourage using the serial test harness [0],
      but do not really say why. For cairo, I do not see problems:
      
      We have some quick, small checks (e.g. is cairo_public used where needed
      in the public headers). And then there is the big, heavy-weight test
      suite (cairo-test-suite). Thus, running these things in parallel has
      basically no benefits.
      
      Additionally, cairo-test-suite takes really, really long. Not seeing any
      output while it is running is annoying. Failing to find the output even
      in files is bad.
      
      Thus, since I do not see any benefit...
      57068e62
  9. 01 Mar, 2021 2 commits
  10. 25 Feb, 2021 3 commits
  11. 24 Feb, 2021 3 commits
  12. 23 Feb, 2021 6 commits
  13. 21 Feb, 2021 4 commits