[subset] Fix check-symbols failure
Fixes https://github.com/harfbuzz/harfbuzz/issues/3850
diff --git a/src/check-symbols.py b/src/check-symbols.py
index 11ca28d..d0b8bd3 100755
--- a/src/check-symbols.py
+++ b/src/check-symbols.py
@@ -31,7 +31,7 @@
symprefix = '_' if suffix == 'dylib' else ''
EXPORTED_SYMBOLS = [s.split ()[2]
- for s in re.findall (r'^.+ [BCDGIRST] .+$', subprocess.check_output (nm.split() + [so]).decode ('utf-8'), re.MULTILINE)
+ for s in re.findall (r'^.+ [BCDGIRSTu] .+$', subprocess.check_output (nm.split() + [so]).decode ('utf-8'), re.MULTILINE)
if not re.match (r'.* %s(%s)\b' % (symprefix, IGNORED_SYMBOLS), s)]
# run again c++filt also if is available
diff --git a/src/hb-subset-accelerator.hh b/src/hb-subset-accelerator.hh
index 34bd053..5652db1 100644
--- a/src/hb-subset-accelerator.hh
+++ b/src/hb-subset-accelerator.hh
@@ -33,12 +33,13 @@
#include "hb-map.hh"
#include "hb-set.hh"
+extern HB_INTERNAL hb_user_data_key_t _hb_subset_accelerator_user_data_key;
+
struct hb_subset_accelerator_t
{
static hb_user_data_key_t* user_data_key()
{
- static hb_user_data_key_t key;
- return &key;
+ return &_hb_subset_accelerator_user_data_key;
}
static hb_subset_accelerator_t* create(const hb_map_t& unicode_to_gid_,
diff --git a/src/hb-subset.cc b/src/hb-subset.cc
index 6026aa6..de9322d 100644
--- a/src/hb-subset.cc
+++ b/src/hb-subset.cc
@@ -82,6 +82,10 @@
* retain glyph ids option and configure the subset to pass through the layout tables untouched.
*/
+
+hb_user_data_key_t _hb_subset_accelerator_user_data_key = {};
+
+
/*
* The list of tables in the open type spec. Used to check for tables that may need handling
* if we are unable to list the tables in a face.