src/java.desktop/share/native/libfontmanager/harfbuzz/hb-ucdn.cc
changeset 50826 f5b95be8b6e2
parent 48274 51772bf1fb0c
child 54232 7c11a7cc7c1d
equal deleted inserted replaced
50825:aa0a35b071fb 50826:f5b95be8b6e2
   162     HB_SCRIPT_TANGUT,
   162     HB_SCRIPT_TANGUT,
   163     HB_SCRIPT_MASARAM_GONDI,
   163     HB_SCRIPT_MASARAM_GONDI,
   164     HB_SCRIPT_NUSHU,
   164     HB_SCRIPT_NUSHU,
   165     HB_SCRIPT_SOYOMBO,
   165     HB_SCRIPT_SOYOMBO,
   166     HB_SCRIPT_ZANABAZAR_SQUARE,
   166     HB_SCRIPT_ZANABAZAR_SQUARE,
       
   167     HB_SCRIPT_DOGRA,
       
   168     HB_SCRIPT_GUNJALA_GONDI,
       
   169     HB_SCRIPT_HANIFI_ROHINGYA,
       
   170     HB_SCRIPT_MAKASAR,
       
   171     HB_SCRIPT_MEDEFAIDRIN,
       
   172     HB_SCRIPT_OLD_SOGDIAN,
       
   173     HB_SCRIPT_SOGDIAN,
   167 };
   174 };
   168 
   175 
   169 static hb_unicode_combining_class_t
   176 static hb_unicode_combining_class_t
   170 hb_ucdn_combining_class(hb_unicode_funcs_t *ufuncs HB_UNUSED,
   177 hb_ucdn_combining_class(hb_unicode_funcs_t *ufuncs HB_UNUSED,
   171                         hb_codepoint_t unicode,
   178                         hb_codepoint_t unicode,
   235 
   242 
   236 #ifdef HB_USE_ATEXIT
   243 #ifdef HB_USE_ATEXIT
   237 static
   244 static
   238 void free_static_ucdn_funcs (void)
   245 void free_static_ucdn_funcs (void)
   239 {
   246 {
   240   hb_unicode_funcs_destroy (static_ucdn_funcs);
   247 retry:
       
   248   hb_unicode_funcs_t *ucdn_funcs = (hb_unicode_funcs_t *) hb_atomic_ptr_get (&static_ucdn_funcs);
       
   249   if (!hb_atomic_ptr_cmpexch (&static_ucdn_funcs, ucdn_funcs, nullptr))
       
   250     goto retry;
       
   251 
       
   252   hb_unicode_funcs_destroy (ucdn_funcs);
   241 }
   253 }
   242 #endif
   254 #endif
   243 
   255 
   244 extern "C" HB_INTERNAL
   256 extern "C" HB_INTERNAL
   245 hb_unicode_funcs_t *
   257 hb_unicode_funcs_t *