Remove NullPool visibility hack

We keep a separate private NullPool in libharfbuzz-subset.so
This can fire back later since now there are two separate null objects,
and comparisons to the null pool can be confused.  Something to deal
with when it comes up. Ouch!
This commit is contained in:
Behdad Esfahbod 2018-02-07 12:44:35 -05:00
parent b95aa204ee
commit 2da0d87e76
2 changed files with 5 additions and 3 deletions

View File

@ -134,9 +134,7 @@ static inline Type& StructAfter(TObject &X)
#define HB_NULL_POOL_SIZE 264 #define HB_NULL_POOL_SIZE 264
static_assert (HB_NULL_POOL_SIZE % sizeof (void *) == 0, "Align HB_NULL_POOL_SIZE."); static_assert (HB_NULL_POOL_SIZE % sizeof (void *) == 0, "Align HB_NULL_POOL_SIZE.");
// TODO add back HB_INTERNAL once we figure out how to not have that break extern HB_INTERNAL const void * const _hb_NullPool[HB_NULL_POOL_SIZE / sizeof (void *)];
// subset compile
extern const void * const _hb_NullPool[HB_NULL_POOL_SIZE / sizeof (void *)];
/* Generic nul-content Null objects. */ /* Generic nul-content Null objects. */
template <typename Type> template <typename Type>

View File

@ -34,6 +34,10 @@
#include "hb-ot-glyf-table.hh" #include "hb-ot-glyf-table.hh"
const void * const OT::_hb_NullPool[HB_NULL_POOL_SIZE / sizeof (void *)] = {};
struct hb_subset_profile_t { struct hb_subset_profile_t {
hb_object_header_t header; hb_object_header_t header;
ASSERT_POD (); ASSERT_POD ();