In HarfBuzz-GPOS.c:: Position_CursiveChain Is this curious sequence HB_UInt i, j; HB_Position positions = buffer->positions; /* First handle all left-to-right connections */ for (j = 0; j < buffer->in_length; j--) {...} As j is an unsigned int, this loop can only ever be executed once, surely the j-- should be j++ ? Peter Hunter