summaryrefslogtreecommitdiff
path: root/Build/source/libs/luafontforge
diff options
context:
space:
mode:
authorTaco Hoekwater <taco@elvenkind.com>2008-04-18 12:27:06 +0000
committerTaco Hoekwater <taco@elvenkind.com>2008-04-18 12:27:06 +0000
commita94278f9e2c781a67d137e0df26c35592f60cb0b (patch)
treec867f5400348fc8b5a559ee5d744e33bd9622d70 /Build/source/libs/luafontforge
parent5e63f0508a830d7b182b384935a1377f9031e619 (diff)
luatex 0.25.3
git-svn-id: svn://tug.org/texlive/trunk@7494 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/luafontforge')
-rw-r--r--Build/source/libs/luafontforge/src/luafflib.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/Build/source/libs/luafontforge/src/luafflib.c b/Build/source/libs/luafontforge/src/luafflib.c
index cf252e682ea..8c67e0b2697 100644
--- a/Build/source/libs/luafontforge/src/luafflib.c
+++ b/Build/source/libs/luafontforge/src/luafflib.c
@@ -255,6 +255,14 @@ static char *make_tag_string (unsigned int field) {
return (char *)tag_string;
}
+static char featbuf[32] = {0};
+
+static char *make_mactag_string (unsigned int field) {
+ sprintf( featbuf, "<%d,%d>", field>>16, field&0xffff );
+ return (char *)featbuf;
+}
+
+
static void
dump_tag (lua_State *L, char *name, unsigned int field) {
lua_checkstack(L,2);
@@ -263,6 +271,14 @@ dump_tag (lua_State *L, char *name, unsigned int field) {
lua_rawset(L,-3);
}
+static void
+dump_mactag (lua_State *L, char *name, unsigned int field) {
+ lua_checkstack(L,2);
+ lua_pushstring(L,name);
+ lua_pushstring(L,make_mactag_string(field));
+ lua_rawset(L,-3);
+}
+
#define NESTED_TABLE(a,b,c) { \
int k = 1; \
next = b; \
@@ -308,7 +324,11 @@ handle_scriptlanglist (lua_State *L, struct scriptlanglist *sll) {
void
do_handle_featurescriptlanglist (lua_State *L, struct featurescriptlanglist *features) {
- dump_tag (L,"tag",features->featuretag);
+ if (features->ismac) {
+ dump_mactag (L,"tag",features->featuretag);
+ } else {
+ dump_tag (L,"tag",features->featuretag);
+ }
lua_newtable(L);
handle_scriptlanglist(L, features->scripts);
lua_setfield(L,-2,"scripts");