shithub: fnt

Download patch

ref: 368477b5658d7c0a00b3261b212f97fd7deb4218
parent: 4dc7878a215151dfd021b4444c7850fa8412387c
author: Sigrid Solveig Haflínudóttir <sigrid@ftrv.se>
date: Tue Jul 16 15:04:32 EDT 2024

strip CGLYPH_FL_OVERLAP_COMPOUND out

--- a/otf.c.in
+++ b/otf.c.in
@@ -258,6 +258,7 @@
 enum {
 	CGLYPH_FL_WORD_ARGS = 1<<0,
 	CGLYPH_FL_SCALE = 1<<3,
+	CGLYPH_FL_OVERLAP_COMPOUND = 1<<10,
 	CGLYPH_FL_UNSCALED_COMPONENT_OFFSET = 1<<12,
 };
 
@@ -276,7 +277,7 @@
 
 	if((b = otfreadn(o, 2*2)) == nil)
 		goto err;
-	v->flags = b[0]<<8 | b[1];
+	v->flags = (b[0]<<8 | b[1]) & ~CGLYPH_FL_OVERLAP_COMPOUND;
 	v->glyphIndex = b[2]<<8 | b[3];
 	instr |= v->flags & CGLYPH_FL_INSTRUCTIONS;
 	if(v->flags & CGLYPH_FL_UNSCALED_COMPONENT_OFFSET)
--- a/otf.h.in
+++ b/otf.h.in
@@ -35,7 +35,6 @@
 	CGLYPH_FL_2X2_TRANSFORM = 1<<7,
 	CGLYPH_FL_INSTRUCTIONS = 1<<8,
 	CGLYPH_FL_METRICS = 1<<9,
-	CGLYPH_FL_OVERLAP_COMPOUND = 1<<10,
 	CGLYPH_FL_SCALED_COMPONENT_OFFSET = 1<<11,
 };
 
--- a/plan9/otf.c
+++ b/plan9/otf.c
@@ -272,6 +272,7 @@
 enum {
 	CGLYPH_FL_WORD_ARGS = 1<<0,
 	CGLYPH_FL_SCALE = 1<<3,
+	CGLYPH_FL_OVERLAP_COMPOUND = 1<<10,
 	CGLYPH_FL_UNSCALED_COMPONENT_OFFSET = 1<<12,
 };
 
@@ -290,7 +291,7 @@
 
 	if((b = otfreadn(o, 2*2)) == nil)
 		goto err;
-	v->flags = b[0]<<8 | b[1];
+	v->flags = (b[0]<<8 | b[1]) & ~CGLYPH_FL_OVERLAP_COMPOUND;
 	v->glyphIndex = b[2]<<8 | b[3];
 	instr |= v->flags & CGLYPH_FL_INSTRUCTIONS;
 	if(v->flags & CGLYPH_FL_UNSCALED_COMPONENT_OFFSET)
--- a/plan9/otf.h
+++ b/plan9/otf.h
@@ -35,7 +35,6 @@
 	CGLYPH_FL_2X2_TRANSFORM = 1<<7,
 	CGLYPH_FL_INSTRUCTIONS = 1<<8,
 	CGLYPH_FL_METRICS = 1<<9,
-	CGLYPH_FL_OVERLAP_COMPOUND = 1<<10,
 	CGLYPH_FL_SCALED_COMPONENT_OFFSET = 1<<11,
 };