Index: third_party/harfbuzz/src/harfbuzz-thai.c |
diff --git a/third_party/harfbuzz/src/harfbuzz-thai.c b/third_party/harfbuzz/src/harfbuzz-thai.c |
deleted file mode 100644 |
index 1d1aa2fcfc0f2bd10aa134d2633d7f43226d7686..0000000000000000000000000000000000000000 |
--- a/third_party/harfbuzz/src/harfbuzz-thai.c |
+++ /dev/null |
@@ -1,87 +0,0 @@ |
-/* |
- * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) |
- * |
- * This is part of HarfBuzz, an OpenType Layout engine library. |
- * |
- * Permission is hereby granted, without written agreement and without |
- * license or royalty fees, to use, copy, modify, and distribute this |
- * software and its documentation for any purpose, provided that the |
- * above copyright notice and the following two paragraphs appear in |
- * all copies of this software. |
- * |
- * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR |
- * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES |
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN |
- * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH |
- * DAMAGE. |
- * |
- * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, |
- * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND |
- * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS |
- * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO |
- * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. |
- */ |
- |
-#include "harfbuzz-shaper.h" |
-#include "harfbuzz-shaper-private.h" |
-#include "harfbuzz-external.h" |
- |
-#include <assert.h> |
- |
-static void thaiWordBreaks(const HB_UChar16 *string, hb_uint32 len, HB_CharAttributes *attributes) |
-{ |
- typedef int (*th_brk_def)(const char*, int[], int); |
- static void *thaiCodec = 0; |
- static th_brk_def th_brk = 0; |
- char *cstr = 0; |
- int brp[128]; |
- int *break_positions = brp; |
- hb_uint32 numbreaks; |
- hb_uint32 i; |
- |
- if (!thaiCodec) |
- thaiCodec = HB_TextCodecForMib(2259); |
- |
- /* load libthai dynamically */ |
- if (!th_brk && thaiCodec) { |
- th_brk = (th_brk_def)HB_Library_Resolve("thai", "th_brk"); |
- if (!th_brk) |
- thaiCodec = 0; |
- } |
- |
- if (!th_brk) |
- return; |
- |
- cstr = HB_TextCodec_ConvertFromUnicode(thaiCodec, string, len, 0); |
- if (!cstr) |
- return; |
- |
- break_positions = brp; |
- numbreaks = th_brk(cstr, break_positions, 128); |
- if (numbreaks > 128) { |
- break_positions = (int *)malloc(numbreaks * sizeof(int)); |
- numbreaks = th_brk(cstr, break_positions, numbreaks); |
- } |
- |
- for (i = 0; i < len; ++i) |
- attributes[i].lineBreakType = HB_NoBreak; |
- |
- for (i = 0; i < numbreaks; ++i) { |
- if (break_positions[i] > 0) |
- attributes[break_positions[i]-1].lineBreakType = HB_Break; |
- } |
- |
- if (break_positions != brp) |
- free(break_positions); |
- |
- HB_TextCodec_FreeResult(cstr); |
-} |
- |
- |
-void HB_ThaiAttributes(HB_Script script, const HB_UChar16 *text, hb_uint32 from, hb_uint32 len, HB_CharAttributes *attributes) |
-{ |
- assert(script == HB_Script_Thai); |
- attributes += from; |
- thaiWordBreaks(text + from, len, attributes); |
-} |
- |