1. 08 Jul, 2021 1 commit
  2. 06 Jul, 2021 1 commit
  3. 28 Jun, 2021 3 commits
    • Akira TAGOH's avatar
      Bump version to 2.13.94 · e291fda7
      Akira TAGOH authored
    • Akira TAGOH's avatar
      Fix score evaluation for multiple values in properties · da1c9f7a
      Akira TAGOH authored
      Sometimes fonts has multiple values in family and sub-family in order to unify
      other variants into one. they basically make difference in sub-family though,
      they also still have standalone family and sub-family. in that case, sub-family is
      likely to be Regular.
      fontconfig couldn't recognize the difference between :family=Foo:style=Regular
      and :family=Foo Caption:style=Regular for example because fontconfig didn't
      give different score on matching result for the position of multiple values in
      a cache.
      Thus, when querying a font like :family=Foo:style=Regular may results
      :family=Foo Caption:style=Regular. (see the test case for more details)
      To fix this situation, giving different score according to the position
      of multiple values in a cache as well as the position of multiple values
      in a query.
      Fixes fontconfig/fontconfig#283
    • Akira TAGOH's avatar
      Revert constructing fullname property from family and style properties · d62d984e
      Akira TAGOH authored
      This seems making a regression in Java. we will revisit this issue later.
      Fixes fontconfig/fontconfig#277
  4. 25 Jun, 2021 1 commit
  5. 09 Apr, 2021 1 commit
  6. 30 Mar, 2021 1 commit
  7. 26 Mar, 2021 1 commit
  8. 25 Mar, 2021 1 commit
  9. 03 Mar, 2021 3 commits
  10. 02 Mar, 2021 1 commit
    • Akira TAGOH's avatar
      Overwrite symlinks for config files · 615e2cb8
      Akira TAGOH authored
      In Makefile, we are trying to remove old symlinks first and then create a symlink.
      do the same thing in meson too.
      Also, the line of the exception handling for FileExistsError is meaningless
      as the above line is taking care of it instead and we shouldn't ignore it if
      os.remove and os.symlink doesn't work somehow.
      Fixes fontconfig/fontconfig#275
  11. 18 Feb, 2021 1 commit
    • Tim-Philipp Müller's avatar
      meson: fix subproject build regression · dba3287b
      Tim-Philipp Müller authored and Akira TAGOH's avatar Akira TAGOH committed
      commit ae9ac2a1 from !165 introduced a regression when
      fontconfig is built as a subproject. In that case we
      would fail to correctly construct the path to the root
      build dir where the meson-info subdirectory resides,
      instead looking for it in the fontconfig subproject
      subdir. This would result in
      FAILED: subprojects/fontconfig/src/fcobjshash.gperf
      errors in the cutout.py script.
      Instead use the @BUILD_ROOT@ substitution to get
      to the build root which will work correctly in
      either scenario.
  12. 16 Feb, 2021 1 commit
    • Ben Wagner's avatar
      Fix stack use after scope in FcConfigCompareValue · ba15d41b
      Ben Wagner authored
      Discovered by AddressSanitizer. When left_o and right_o are promoted the
      promoted values are placed on the stack in FcValuePromotionBuffer.
      The FcValuePromotionBuffers must then continue to be in scope while
      left_o and right_o point into their content. In 9d4e5d0f the
      FcValuePromotionBuffers were moved into the incorrect scope, leaving
      left_o and right_o pointing into an object whose lifetime has ended.
      This is similar to left and right which appear to have a smaller scope
      but are actually required to be in the larger scope.
      Correct this by moving the FcValuePromotionBuffers to the proper scope.
      Leave the left and right FcValues where they are since they are in the
      correct scope already.
      This also adds to test-conf the ability to create charset, langset,
      range, and matrix in patterns. This allows for a simple test which fails
      under AddressSanitizer before this change and passes after.
  13. 15 Feb, 2021 2 commits
  14. 30 Jan, 2021 1 commit
  15. 28 Jan, 2021 1 commit
  16. 26 Jan, 2021 1 commit
  17. 20 Jan, 2021 1 commit
  18. 15 Jan, 2021 1 commit
  19. 13 Jan, 2021 1 commit
  20. 08 Jan, 2021 2 commits
    • Tim-Philipp Müller's avatar
      ci: add meson android aarch64 build · 643c3f1e
      Tim-Philipp Müller authored and Akira TAGOH's avatar Akira TAGOH committed
      Passing -Wno-pointer-bool-conversion in cross file
      to suppress compiler warning:
      src/fcfreetype.c:1373:11: address of array 'os2->achVendID' will always evaluate to 'true'
    • Tim-Philipp Müller's avatar
      fcformat: fix compiler warnings with clang on Android · 8657c081
      Tim-Philipp Müller authored and Akira TAGOH's avatar Akira TAGOH committed
      fcformat.c:762:44: warning: expression which evaluates to zero treated as a null pointer constant of type 'FcChar8 *' (aka 'unsigned char *') [-Wnon-literal-null-conversion]
                      if (!FcNameUnparseValue (buf, &l->value, '\0'))
      fcformat.c:769:38: warning: expression which evaluates to zero treated as a null pointer constant of type 'FcChar8 *' (aka 'unsigned char *') [-Wnon-literal-null-conversion]
                  FcNameUnparseValueList (buf, l, '\0');
  21. 07 Jan, 2021 2 commits
    • Ben Wagner's avatar
      Clean up test-family-matching test. · bd7123ac
      Ben Wagner authored and Akira TAGOH's avatar Akira TAGOH committed
      Correct the type of TestMatchPattern's 'ret' from TestResult to
      TestMatchResult to match the actual return type (and values assigned to
      Fix leak of TestMatchPattern's 'xml' and TestFamily's 'pat'.
      Simplify TestMatchPattern cleanup and ensure cleanup always happens.
    • Tim-Philipp Müller's avatar
      meson: remove unused stdin_wrapper.py script · e2c6b620
      Tim-Philipp Müller authored and Akira TAGOH's avatar Akira TAGOH committed
      Not needed any more. Used to be used with fc-case and fc-lang,
      but those have since been rewritten in python.
  22. 28 Dec, 2020 1 commit
    • Ben Wagner's avatar
      Test all not_eq for family names. · b1e1a875
      Ben Wagner authored
      Any early out checks must give the same answer as FcConfigCompareValue.
      An accelerator was added for family names which treated all ops as if
      they were FcOpEqual, giving the wrong answer for other non-equivalent ops
      (for example FcOpContains or FcOpNotEqual).
      This adds a test which passes before the accelerator was introduced,
      fails after, and will pass again after !142 lands. This tests the all
      not_eq case.
  23. 17 Dec, 2020 2 commits
  24. 16 Dec, 2020 2 commits
    • Ben Wagner's avatar
      Fix test-conf string to integer conversion. · 921ede9f
      Ben Wagner authored
      The test-conf build_pattern attempted to convert known constant strings
      into integer values. However, it did so by always converting the string
      value to an integer if possible and then complaining if the key wasn't
      of the expected type. This lead to error messages on "style": "Regular"
      since "Regular" was recognized as "weight".
      Instead, only attempt conversion from string to integer if the key is
      the name of an object which can take an integer type. This eliminates
      the spurious non-fatal errors reported when parsing
      This also fixes an issue where the created value was given the type of
      the object found, but the integer field was assigned. Instead, check
      that the object type can take an integer and always set the value type
      to integer.
    • Ben Wagner's avatar
      Always run-test-conf, but skip if not built. · b35c72db
      Ben Wagner authored
      The test-conf test requires libjson-c to be available in order to be
      built. However, there has been no user indication that additional tests
      could be built if the json-c development files were available.
      Continue to not build test-conf if json-c is not available, but do run
      the test harness. The test harness is updated to SKIP the test if the
      test-conf binary is unavailable.
  25. 14 Dec, 2020 2 commits
    • Ben Wagner's avatar
      Fix wild frees and leak of fs in test-conf. · 5cd11d19
      Ben Wagner authored
      Reported by AddressSanitizer when running test-conf. The `query`,
      `result`, and `result_fs` were not initialized to NULL so could result
      in a wild free when first initialized.
      The `method` was also not initialized to NULL so comparisons could be
      made against random data if it had not yet been assigned.
      The outer `fs` was never destroyed, but is also not used, so remove.
    • Ben Wagner's avatar
      Fix leaks in fcxml.c, fc-match.c, and tests. · d55eaa6b
      Ben Wagner authored and Akira TAGOH's avatar Akira TAGOH committed
      Fix leaks reported by AddressSanitizer when running 'make check'.
  26. 10 Dec, 2020 1 commit
    • Ben Wagner's avatar
      Portable trap conditions in run-test.sh. · c00a51f4
      Ben Wagner authored
      Posix says:
          The condition can be EXIT, 0 (equivalent to EXIT), or a signal
          specified using a symbolic name, without the SIG prefix, as listed
          in the tables of signal names in the <signal.h> header defined in
          the Base Definitions volume of IEEE Std 1003.1-2001, Chapter 13,
          Headers; for example, HUP, INT, QUIT, TERM. Implementations may
          permit names with the SIG prefix or ignore case in signal names as
          an extension.
      Remove 'SIG' from trap conditions in run-test.sh for portability.
  27. 08 Dec, 2020 1 commit
  28. 07 Dec, 2020 2 commits
    • Ben Wagner's avatar
      Add line between licenses in COPYING. · 23cede3e
      Ben Wagner authored
      More clearly delineate which files are associated with each license.
    • Ben Wagner's avatar
      Remove abort from FcCompareSize. · 97d54185
      Ben Wagner authored and Akira TAGOH's avatar Akira TAGOH committed
      There doesn't appear to be a good reason to abort when 'v1' has type
      FcTypeRange. If there does turn out to be a good reason for this then it
      should be better documented and the code for handling this case removed.
      At worst it seems -1 should be returned as it is for other unknown
      types. It is possible this is left over debug code from the initial
  29. 04 Dec, 2020 1 commit
    • Ben Wagner's avatar
      Skip leading whitespace in style name. · 3d692638
      Ben Wagner authored
      Found by Clang-Tidy. The intent seems to have been to skip all leading
      whitespace in the 'style' string, but instead this loop was an odd
      looking no-op. Remove the 'break' from the loop so that it will
      continue until end of string or a non-space character is found.