src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape.cc
changeset 50826 f5b95be8b6e2
parent 48274 51772bf1fb0c
child 54232 7c11a7cc7c1d
--- a/src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape.cc	Thu Jun 21 09:53:50 2018 -0700
+++ b/src/java.desktop/share/native/libfontmanager/harfbuzz/hb-shape.cc	Thu Jun 21 12:54:30 2018 -0700
@@ -51,7 +51,12 @@
 static
 void free_static_shaper_list (void)
 {
-  free (static_shaper_list);
+retry:
+  const char **shaper_list = (const char **) hb_atomic_ptr_get (&static_shaper_list);
+  if (!hb_atomic_ptr_cmpexch (&static_shaper_list, shaper_list, nullptr))
+    goto retry;
+
+  free (shaper_list);
 }
 #endif