浏览代码

Fix a bug on embedded fonts.

louyihua 8 年之前
父节点
当前提交
f6451477de
共有 1 个文件被更改,包括 4 次插入3 次删除
  1. 4 3
      font.c

+ 4 - 3
font.c

@@ -115,9 +115,10 @@ PAL_InitFont(
 		//
 		//
 		for (i = 0; i < nChars; i++)
 		for (i = 0; i < nChars; i++)
 		{
 		{
-			fread(unicode_font[wchar_buf[i]], 30, 1, fp);
-			unicode_font[wchar_buf[i]][30] = 0;
-			unicode_font[wchar_buf[i]][31] = 0;
+			wchar_t w = (wchar_buf[i] >= unicode_upper_base) ? (wchar_buf[i] - unicode_upper_base + 0xd800) : wchar_buf[i];
+			fread(unicode_font[w], 30, 1, fp);
+			unicode_font[w][30] = 0;
+			unicode_font[w][31] = 0;
 		}
 		}
 		free(wchar_buf);
 		free(wchar_buf);