From 159dc0270700333d09b45167e800d2c36327ed62 Mon Sep 17 00:00:00 2001 From: Dylan Araps Date: Wed, 18 Aug 2021 15:04:08 +0300 Subject: [PATCH] pango: 1.48.9 --- extra/pango/checksums | 4 +- extra/pango/patches/no-fribidi.patch | 120 +++++++++++++-------------- extra/pango/version | 2 +- 3 files changed, 62 insertions(+), 64 deletions(-) diff --git a/extra/pango/checksums b/extra/pango/checksums index ccaa2db0..6c73b093 100644 --- a/extra/pango/checksums +++ b/extra/pango/checksums @@ -1,2 +1,2 @@ -27b9c26a4fb87d0b10e8df38d9a46ef9c95af7731add0340bdb8e2ae1abfde3e -5d4501a72113d4420954978c82f3ed55235ffd6850a9bb14422abb32203ce5a9 +6c78162507debd3389dab9f045cfa0b03cb44c432fb21979d4acf45db1b93781 +b1c9cd0e06737a8092f694fde65855070c75c457ff3114122d50d2f068c6181e diff --git a/extra/pango/patches/no-fribidi.patch b/extra/pango/patches/no-fribidi.patch index 41074646..f0ca7bb8 100644 --- a/extra/pango/patches/no-fribidi.patch +++ b/extra/pango/patches/no-fribidi.patch @@ -1,19 +1,19 @@ diff --git a/meson.build b/meson.build -index d5932b3..9387ca7 100644 +index c03bf85..df529aa 100644 --- a/meson.build +++ b/meson.build @@ -191,7 +191,6 @@ endif pango_deps = [] - + glib_req_version = '>= 2.62' --fribidi_req_version = '>= 0.19.7' +-fribidi_req_version = '>= 1.0.6' libthai_req_version = '>= 0.1.9' harfbuzz_req_version = '>= 2.2.0' fontconfig_req_version = '>= 2.11.91' @@ -211,11 +210,6 @@ gio_dep = dependency('gio-2.0', version: glib_req_version, fallback: ['glib', 'libgio_dep']) pango_deps += [glib_dep, gobject_dep, gio_dep] - + -fribidi_dep = dependency('fribidi', version: fribidi_req_version, - fallback: ['fribidi', 'libfribidi_dep'], - default_options: ['docs=false']) @@ -23,34 +23,32 @@ index d5932b3..9387ca7 100644 if thai_dep.found() pango_conf.set('HAVE_LIBTHAI', 1) diff --git a/pango/pango-bidi-type.c b/pango/pango-bidi-type.c -index a5a13a9..29ddeb8 100644 +index 32858f7..d60b038 100644 --- a/pango/pango-bidi-type.c +++ b/pango/pango-bidi-type.c -@@ -23,16 +23,18 @@ - +@@ -22,11 +22,19 @@ + #include "config.h" + #include - --#include - +-#include ++#include + #undef PANGO_DISABLE_DEPRECATED - - #include "pango-bidi-type.h" - #include "pango-utils.h" - --#if FRIBIDI_MAJOR_VERSION >= 1 --#define USE_FRIBIDI_EX_API --#endif + +typedef uint32_t FriBidiChar; +typedef uint32_t FriBidiCharType; ++typedef uint32_t FriBidiBracketType; +typedef int FriBidiStrIndex; +typedef int FriBidiParType; +typedef signed char FriBidiLevel; + +#define FRIBIDI_PAR_LTR (0x00000010L | 0x00000100L) - - /** - * pango_bidi_type_for_unichar: -@@ -52,40 +54,7 @@ ++ + #include "pango-bidi-type.h" + #include "pango-utils.h" + +@@ -48,40 +56,7 @@ PangoBidiType pango_bidi_type_for_unichar (gunichar ch) { @@ -90,24 +88,22 @@ index a5a13a9..29ddeb8 100644 - } + return PANGO_BIDI_TYPE_L; } - + /* Some bidi-related functions */ -@@ -120,38 +89,16 @@ pango_log2vis_get_embedding_levels (const gchar *text, +@@ -116,36 +91,13 @@ pango_log2vis_get_embedding_levels (const gchar *text, glong n_chars, i; guint8 *embedding_levels_list; const gchar *p; - FriBidiParType fribidi_base_dir; FriBidiCharType *bidi_types; - #ifdef USE_FRIBIDI_EX_API FriBidiBracketType *bracket_types; - #endif - FriBidiLevel max_level; +- FriBidiLevel max_level; FriBidiCharType ored_types = 0; - FriBidiCharType anded_strongs = FRIBIDI_TYPE_RLE; - + G_STATIC_ASSERT (sizeof (FriBidiLevel) == sizeof (guint8)); G_STATIC_ASSERT (sizeof (FriBidiChar) == sizeof (gunichar)); - + - switch (*pbase_dir) - { - case PANGO_DIRECTION_LTR: @@ -130,26 +126,31 @@ index a5a13a9..29ddeb8 100644 - if (length < 0) length = strlen (text); - -@@ -165,16 +112,13 @@ pango_log2vis_get_embedding_levels (const gchar *text, - + +@@ -157,20 +109,14 @@ pango_log2vis_get_embedding_levels (const gchar *text, + for (i = 0, p = text; p < text + length; p = g_utf8_next_char(p), i++) { - gunichar ch = g_utf8_get_char (p); - FriBidiCharType char_type = fribidi_get_bidi_type (ch); + FriBidiCharType char_type = FRIBIDI_PAR_LTR; - + if (i == n_chars) break; - + bidi_types[i] = char_type; ored_types |= char_type; - if (FRIBIDI_IS_STRONG (char_type)) - anded_strongs &= char_type; - #ifdef USE_FRIBIDI_EX_API - if (G_UNLIKELY(bidi_types[i] == FRIBIDI_TYPE_ON)) - bracket_types[i] = fribidi_get_bracket (ch); -@@ -200,39 +144,8 @@ pango_log2vis_get_embedding_levels (const gchar *text, +- if (G_UNLIKELY(bidi_types[i] == FRIBIDI_TYPE_ON)) +- bracket_types[i] = fribidi_get_bracket (ch); +- else +- bracket_types[i] = FRIBIDI_NO_BRACKET; ++ bracket_types[i] = 0; + } + + /* Short-circuit (malloc-expensive) FriBidi call for unidirectional +@@ -187,56 +133,15 @@ pango_log2vis_get_embedding_levels (const gchar *text, * o base_dir doesn't have an RTL taste. * o there are letters, and base_dir is weak. */ @@ -163,8 +164,8 @@ index a5a13a9..29ddeb8 100644 - { - /* all LTR */ - fribidi_base_dir = FRIBIDI_PAR_LTR; - memset (embedding_levels_list, 0, n_chars); - goto resolved; +- memset (embedding_levels_list, 0, n_chars); +- goto resolved; - } - /* The case that all resolved levels will be RTL is much more complex. - * No isolates, no numbers, all strongs are RTL, and one of @@ -186,34 +187,31 @@ index a5a13a9..29ddeb8 100644 - memset (embedding_levels_list, 1, n_chars); - goto resolved; - } - - - #ifdef USE_FRIBIDI_EX_API -@@ -240,12 +153,10 @@ pango_log2vis_get_embedding_levels (const gchar *text, - &fribidi_base_dir, - (FriBidiLevel*)embedding_levels_list); - #else -- max_level = fribidi_get_par_embedding_levels (bidi_types, n_chars, -- &fribidi_base_dir, -- (FriBidiLevel*)embedding_levels_list); -+ max_level = 0; - #endif - +- +- +- max_level = fribidi_get_par_embedding_levels_ex (bidi_types, bracket_types, n_chars, +- &fribidi_base_dir, +- (FriBidiLevel*)embedding_levels_list); +- - if (G_UNLIKELY(max_level == 0)) -+ if (max_level == 0) - { - /* fribidi_get_par_embedding_levels() failed. */ - memset (embedding_levels_list, 0, length); -@@ -258,7 +169,7 @@ resolved: +- { +- /* fribidi_get_par_embedding_levels() failed. */ +- memset (embedding_levels_list, 0, length); +- } ++ /* all LTR */ ++ /* fribidi_get_par_embedding_levels() failed. */ ++ memset (embedding_levels_list, 0, length); + + resolved: + g_free (bidi_types); g_free (bracket_types); - #endif - + - *pbase_dir = (fribidi_base_dir == FRIBIDI_PAR_LTR) ? PANGO_DIRECTION_LTR : PANGO_DIRECTION_RTL; + *pbase_dir = PANGO_DIRECTION_LTR; - + return embedding_levels_list; } -@@ -282,17 +193,6 @@ resolved: +@@ -260,17 +165,6 @@ resolved: PangoDirection pango_unichar_direction (gunichar ch) { @@ -230,4 +228,4 @@ index a5a13a9..29ddeb8 100644 - else return PANGO_DIRECTION_LTR; } - + diff --git a/extra/pango/version b/extra/pango/version index 9ff5d172..277e34c1 100644 --- a/extra/pango/version +++ b/extra/pango/version @@ -1 +1 @@ -1.48.8 1 +1.48.9 1